新手了解java 类,对象以及封装基础知识
1、类
什么是类
类是具备某些共同特征的实体的集合,是对所具有相同特征实体的抽象。
Java中定义类的基本语法
访问修饰符 class 类名{}
public class Student{ //定义了一个学生类 }
成员变量
成员变量就是对象所拥有的属性
基本语法
访问修饰符 [可选修饰符] 数据类型 变量名称;
public class Student{ //定义了一个学生类 public int age; String name; protected long tel; private double a; }
方法
放法可以用来描述对象动作
基本语法
访问修饰符 [可选修饰符] 数据类型 方法名称(参数列表){方法体};
public class Student{ public void print(){ System.out.print("方法") } public int sum(int a, int b){ return a + b; } }
2、对象
什么是对象
对象就是类的实例
对象的创建
基本语法
类型 对象名称 = new 类型();
public class StudentTest{ public static void main(String[] args){ Student stu = new Student(); } }
3.方法的重载 什么是方法的重载
方法的重载就是在一个类当中存在多个同名的方法;
这些方法遵循以下规则
- 方法名相同
- 方法的参数列表不同
- 1)参数的个数不同
- 2)参数的类型不完全相同,包括数据类型以及数据类型的顺序
- 3)与参数名称无关
- 与方法的返回值类型、访问修饰符无关
public class Student{ /** *定义一个求和方法根据传入参数的值进行求和,并返回结果 */ public int sum(int a,int b){ return a + b; } //参数的个数不同 public int sum(int a,int b,int c){ return a + b + c; } //参数列表的类型不同 public int sum(int a,short b){ return a + b; } //参数列表类型顺序不同 public int sum(short a,int b){ return a + b; } }
4、构造器 什么是构造方法
- 构造方法的结构和普通方法类似,但是和普通方法完全不同两个代码块;
- 构造方法也是方法,意味着使用了构造方法,方法会执行,也能完成功能
- 构造方法就是一个代码块【就是一个结构 ,构造方法和 字段 方法一样都是一个类中的成员之一
- 构造方法也该存在于类的结构体中
构造方法语法:
- 构造方法的名字和类名完全一致(包括大小写完全一致)
- 没有返回值类型(void也不行)
- 构造方法方法体不能返回任何的值(即不能在方法体中return 值)
- 其他的和普通方法类似 ,可以有修饰符(
public、protected、private、默认
),可以有形参列表 - 构造方法必须有方法体
- 构造方法不能有任何非访问性质的修饰符修饰,例如
static、final、synchronized、abstract
等都不能修饰构造方法。
注意:new Student()
这个整体既是一个Student
对象,又是调用的Student
的无参数构造方法
构造方法特点
1.类中构造方法特点:
- ① 每一个类中都至少有一个构造方法;
- ② 如果没有看到(显示的),那么存在一个隐式的无参数的构造方法;
- ③ 如果一个类中有显示的构造方法,那么隐式的无参的构造方法就不存在了;
构造方法的作用
在创建对象的同时给对象的成员变量赋值(初始化工作)
模板语法
public class 类名{ 成员变量 (字段); 构造方法(有参、无参); 方法 (具体的一个功能行为); }
public class Student{ public String name; public int age; /** 无参构造 */ public Student(){} /** 有参构造 */ public Student(String name,int age){ } }
5.this this指代当前对象,即哪个对象调用就指代哪个对象
this****用途:
- 解决局部变量和成员变量的二义性
- 在本类之间 ,构造方法之间的相互调用 this()调用无参数的构造方法,this(…)可以添加参数,表示调用有参数的构造方法
- this作为参数传递,this作为返回值
public class Student{ public String name; public int age; /** 无参构造 */ public Student(){} /** 有参构造 */ public Student(String name,int age){ this();//调用构造器,只能写在第一句 this.name = name //调用属性 } }
6.封装
封装:指的是将类中不想被外界访问的成员私有化。
封装的作用
封装是为了保护内部数据的安全:
1.不希望在外部类中随意访问对象的成员变量
2.达到权限要求的才能访问
怎么封装
1.如何控制程序中的访问 ?
通过给类中的成员(字段,方法,构造方法)添加访问权限修饰符来实现封装(访问控制)
2.什么是访问权限:简单的认为访问权限就是不同级别的人能够干不同级别的事,不同级别的人能看到的页面是不同的
步骤
- 1. 私有化成员变量(用private修饰成员变量)
- 2. 为每一个成员变量提供合理的
- **getXxx()**方法 获取成员变量的值,如果当前成员变量类型是boolean类型,将getXxx()改为 isXxx()
- **setXxx(…)**方法 设置成员变量的值
- 3. 提供一个无参构造,和全参的构造
- 4. 该类用public修饰
public class Student{ private String name; private int age; public String getName(){ return this.name; } public void setName(String name){ this.name = name; } public String getAge(){ return this.age; } public void setAge(String age){ this.age = age; } }
总结
本篇文章就到这里了,希望可以给你提供帮助,也希望您能多多关注脚本之家的更多内容!
- Java面向对象之抽象类,接口的那些事
- Java反射(Class类,Class对象获取)
- 手把手带你粗略了解Java--类和对象
- Java面向对象之内部类案例讲解
- java对象转化成String类型的四种方法小结
- 一篇文章带你深入了解Java对象与Java类
- Java实现普通类注入service对象
- 带你入门Java的类与对象
- 浅谈Java面向对象之内部类
- java各种类型对象占用内存情况分析
- 带你快速了解Java中类和对象的关系
- java中类和对象的详细介绍
- Java中的对象、类、抽象类、接口、继承之间的联系
- JavaWeb实体类转为json对象的实现方法
- Java面向对象基础,类,变量,方法
- Java 基础语法让你弄懂类和对象
相关文章
Spring Boot 整合持久层之Spring Data JPA
在介绍Spring Data JPA的时候,我们首先认识下Hibernate。Hibernate是数据访问解决技术的绝对霸主,使用O/R映射技术实现数据访问,O/R映射即将领域模型类和数据库的表进行映射,通过程序操作对象而实现表数据操作的能力,让数据访问操作无须关注数据库相关的技术2022-08-08SpringBoot2.2.X用Freemarker出现404的解决
这篇文章主要介绍了SpringBoot2.2.X用Freemarker出现404的解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-02-02@Transactional注解:多个事务嵌套时,独立事务处理方式
这篇文章主要介绍了@Transactional注解:多个事务嵌套时,独立事务处理方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-01-01
最新评论