Java中关于类的基础语法
1.构造器1.1 构造器的定义构造器相当于一个特殊方法,它的名称必须和类名一样且没有返回值类型构造器分为有参和无参构造器可以重载可以出现名称一样但是参数不一样的情况。 类默认自带了一个无参构造器如果为类定义了一个有参构造器默认的无参构造器就没有了如果还想用无参构造器就必须手写一个无参构造器出来。public class Student{ /**构造器*/ public Student(){ ... } }1.2 构造器的特点和常见应用场景构造器有什么特点创建对象的时候对象会去调用构造器默认调用无参构造器如果要调用有参构造器创建对象的时候传参就行了。Student s new Student();//调用无参构造器Student s new Student(n”构造器“);//调用参数为string n 的有参构造器常见应用场景创建对象时同时完成对象成员变量属性的初始化赋值.不调用有参构造器的时候需要手动的对对象进行赋值Student t1 new Student; t1.name......; t1.age......;调用有参构造器之后,只需要一行但是效果是一样的。Public Student(String n, int a, char s){ name n; age a; }Student t2 new Student(n:老师a :18;2.this关键字2.1this关键字的简介:this就是一个变量可以用在方法中来拿到当前对象。一句话说就是this可以写在方法里面哪个对象去调用这个方法this就可以指代当前对象拿到当前对象的地址。以下面代码为例当s1调用print()方法时this指代的就是s1这个时候是拿到的就是s2的地址同理s2调用的时候this指代s2.拿到是s2的地址。如果Student类里面定义name age等字段那么this后面可以加上这些字段类似于this.name。Student s1 new Student s1.print(); Student s2 new Student s2.print();public void print() { System.out.println(this); }2.2this关键字应用场景this主要用来解决变量名冲突问题的这个时候打印出来的结果是唱歌喜欢唱歌而并非汪苏泷喜欢唱歌因为就近原则的问题两个name都指向唱歌这个时候就出现变量名冲突的情况。在name前面加上this关键字这样打印出来的效果就是汪苏泷喜欢唱歌。下面的才是标准的有参构造器方法。3.实体类3.1什么是实体类是一种特殊类类中的成员变量全部私有并提供public修饰的getter/setter方法还要为这个类提供一个无参构造器有参构造器可选3.2实体类的基本作用创建它的对象存取数据封装数据3.3实体类的应用场景在实际开发的过程中我们并不会把业务处理的方法也放在对象中我们只希望这个对象的本身只负责数据的存和取对于这些业务处理我们会定义一个单独的对象去处理这就是软件开发中的分层思想。4.static关键字4.1 static修饰成员变量static叫静态可以修饰成员变量成员方法。成员变量有无static修饰分为两种有static修饰的为静态变量类变量无static修饰的为实例变量对象的变量静态变量是类的全部对象共享的属于类在计算机中只有一份只会加载一次实例变量是属于每个对象的。4.1.1认识static修饰成员变量特点访问机制以对象.静态变量名去访问的结果就是始终是以最后一个对象的值赋值如上面代码所示s1.name马冬梅s2.name秋雅结果println(s1.name)的时候打印处理的值是秋雅因为静态变量相当于类的公共变量会重复定义,所以一般推荐以类名.静态变量的方式去访问。 以对象名.实例变量去访问就正常了s1.age23println(s1.age)23.4.1.2静态变量的应用场景如果某个数据只需要一份且希望能被共享(访问修改),则该数据可以定义成静态变量来记住。4.2static修饰方法4.2.1成员方法的分类静态方法(有static修饰的成员方法属于类)实例方法无static修饰的成员方法属于对象。4.2.2认识static修饰和不修饰方法的区别可以通过类名.静态方法(推荐)和对象.静态方法(不推荐)但是只能通过对象.实例方法这种形式访问实例方法。如果这个方法只是为了做一个功能而不需要直接访问对象的数据那么这个方法就可以定义为静态方法如果这个方法是对对象的行为需要访问对象的数据这个方法必须定义成实例方法用类名.静态方法的时候在同一个类中的话类名可以不写省略掉。4.2.3静态方法的常见应用场景1.做工具类工具类中都是一些静态方法每个方法用来完成一个功能以便开发人员直接使用可以提高开发效率提高程序的复用性。工具类没有创建对象的需求建议将工具类的构造器进行私有。4.3静态方法实例方法访问相关的注意事项1.静态方法中可以直接访问静态变量不可以直接访问实例变量。其实很好理解实例变量属于对象的静态方法不知道该变量是哪个类的实例方法也是属于类的2.实例方法中可以直接访问静态变量也可以直接访问实例成员。静态方法是属于类的是类的对象共有的所以可以直接访问静态变量。3.实例方法中可以出现this关键字静态方法中不可以出现this关键字this关键字是用来指代对象的静态方法都不支持直接访问实例变量了所以就更支持不了this关键字了。
上一篇/下一篇内容由系统自动关联
返回资讯列表 →