Day1进阶篇

文章讨论了Java中static关键字的使用,包括静态方法在工具类中的应用,如何通过私有构造方法防止实例化,以及静态方法只能访问静态成员的限制。同时,提到了this关键字的作用,类和对象的概念,以及继承、方法重写和重载的原则。Java的单继承特性以及构造方法的功能也有所阐述。
摘要由CSDN通过智能技术生成

1.static 静态方法 修饰类里面的成员方法

常用于制作工具类,方便别的类调用。工具类不是描述事情的,而是帮我们完成一件事情。

例如ArrayTools类里面有public static int getMin(int []arr) 方法,那么在其它类里面,可以直接调用:

ArrayTools.getMin(arr);

不用重新new一个对象再调用,例如这样:

ArrayTools tools=new ArrayTools();
tools.getMin(arr);

2.private ArrayTools(){}  

如果一个类中所有的方法都是static所修饰,就可以私有构造方法,不让别人再去创建对象,直接调用就可以了,让调用者调用更方便。

3.static静态方法中只能访问静态成员(直接访问)

因为没有创建对象,所以不能用。结合内存,所有静态所修饰的成员是随着类的加载而加载的,类字节码文件加载进方法区,静态成员也存在了,可以用了。但是非静态的得等到对象new出来之后非静态才会出现。static int a;

4. static 中不能使用this关键字

5.1  this是指向当前对象的一个引用

5.2  this 在方法内部局部变量与成员变量重名时,进行区分

public void setname(String name)​​​​​​​{
       this.name=name;//后者为方法的形参,前者为对象,意思是将方法的name赋值给对象
}

//不重名就可以不用this
public void setname(String name1)​​​​​​​{
       name=name1;
}

public String getname(){
       return name;//意思是返回对象的名字return this.name也可以
}

5.3 this是一个对象层面的概念,不要与类层次的概念混淆

6.继承

一个.java文件中可编写多个class,

(1)保证多个类是平级关系。外部类。

(2)多个class只能有一个类被public修饰,如果加了public就限制了要和java文件名保持一致。

别搞类嵌套类,不然就是内部类了。

(3)私有的不能继承,比如private String name; 如果想要用的话就要set get,然后再赋值

Manager m=new Manager();//new一个manager对象出来
m.setName("园林");

//如果没有private的话
Manager m=new Manager();//new一个manager对象出来
m.name="园林";

(4)方法的重写

子父类中,出现了方法声明一模一样的方法(方法名、参数、返回值)

在创建子类对象调用方法的时候,会优先使用子类的方法逻辑

这虽然是就近原则的现象,但其实是子类方法对父类方法 进行了重写操作

7.方法重载Overload   方法重写Override

方法重载Overload

在同一个类中,方法名相同,参数不同(类型不同、个数不同、顺序不同),与返回值无关

方法重写Override (方法覆盖)

在子父类当中,出现了方法声明一模一样的方法(方法名、参数、返回值)

pubilc void method ()

public void method (int num) 参数    void返回值    method方法名

可以通过@Override注解校验是否是重写

父类中私有方法子类不能被重写,因为根本访问不到

子类重写父类方法时,访问权限必须大于等于父类

权限修饰符private (default) protected public            protected几乎不用

 

8.Java只支持单继承,不支持多继承(只能有一个爸爸),但支持多层继承(可以通过继承爸爸继承爷爷,前提是爸爸继承了爷爷)

9.构造方法不能被继承,构造方法名要和类名一致

构造方法是用来初始化对象的

 

 

 练习

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值