关于Java类的讨论

如何创建Java中的类,使用class关键字+类名(类名首字母需大写),同时类可以有访问修饰符,但只能用public修饰若在测试类中定义一个类则不能含有public修饰符,因为含public的类的类名必须与文件名相同,否则会报错。

一、类包含以下方法:

1 构造方法:必须与类名相同且没有返回值,一个类可以有多个构造方法,含有构造方法的前提是拥有字段。构造方法主要是将字段实例化,如果没有显式的设置一个构造方法,将会隐士的设置一个默认构造器,将字段实例化为默认值。

注意不要再构造器中定义与实例字段同名的方法。

2 有用访问器方法和更改器方法:

访问器方法访问对象中的被实例化的字段不做出改变,更改器方法访问对象中被实例化的字段并改变其中的值

常见的为字段实例化后的Getter方法和Setter方法分别为访问器方法和更改器方法。

当然还存在其他更改器方法,由于太多这里不一一列举。

二、如何创建对象

有些类的对象能用new运算符创建一个对象,而有的类需要使用类名.now()构造一个对象(如LocalDate.now())。

LocalDate.now()方法称为静态工厂方法。

注意使用new 运算符构造对象会返回一个这个对象的引用。如 new Employee 构造一个Employee对象并返回一个Employee对象的引用

三、关于null的引用

若构造器为字段赋值为null时有以下两种方法解决。

在Java9中,Object类对此提供了一个便利方法:

public Employee(String n, double s,int year, int month, int day){
      name = Object.requireNonNullElse(n, "unkown");
   ······
}

四、final实例字段:

在类中可以把实例字段定义为final。这样的字段必须在构造对象时初始化。也就是说必须确保在一个构造器执行后这个字段已经被设置,且之后不能再修改。

五、静态字段与静态方法:

静态字段:静态字段属于类不属于任何单个对象。如创建一个Employee类其中有个静态字段id 那么id为类所有之后创建的每个对象都有一个id字段

静态方法:静态方法中没有隐式参数(即这个这个类的对象)。静态方法可以访问静态字段。对于静态方法可以通过类名.静态方法名进行调用。以下两分钟方法可以使用静态方法:

1、方法不需要访问对象状态,因为它所需要的参数都通过显式提供。(Math.pow())

2、方法只需要访问类的静态字段(例如:Employee.getNextId)。

六、调用另一个构造器

关键字this可以指示一个隐式参数,也可以通过this访问另一个构造器。

如果构造器的第一个语句是this(········),这个构造器将调用同一个类的另一个构造器。

public Employee(double s){
  //调用同一个类的另一个构造器
  this("Employee #"+nextId,s);
  nextId++;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值