Java系列-Java高级

本文深入探讨了Java编程中的关键概念,包括类的修饰符、构造器、静态成员、形参长度可变的方法、模块设计原则、递归、String类型特性、this和super的使用、重载与重写、多态机制、组合与外观模式、Integer包装类的特性、String与StringBuffer的比较、不可变类、抽象类的构造器、接口的特性等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


-----------OOP------------------

1、类的修饰符可以是public 、final、abstract、缺省的

2、不能在构造器里面显式return值,因为构造器返回值是隐式的

3、静态成员不能访问非静态成员

4、JAVA编程时,不要使用对象去调用static修饰的成员,应该使用类去调用

5、形参长度可变的方法:通过在最后一个形参的类型后增加三点(...)来实现,并且只能处在形参列表的最后,也就说一个方法中最多只能有一个长度可变的形参,也可以传入一个数组

6、一个源文件只写一个类是良好的编程习惯

7、递归一定要向已知方向递归

8String 类型不可改变:String类为final类型

9、this   super只能出现在类的构造方法的第一行,并且this  super不能出现在同一个构造方法中

10、重载主要发生在同一个类的多个同名方法之间,而重写发生在子类和父类的同名方法之间,当然父类方法和子类方法之间也可能发生重载

11、模块设计追求高内聚:尽可能把模块内部数据,功能实现细节隐藏在模块内部独立完成,不允许外部直接干预

                低耦合:仅暴露少量的方法给外部使用

12、javac -d . hello.java  可编译相应的类目录

13、import static 可以导入静态类

14、静态多态:方法重载

    动态多态:方法重写(要有继承)


15、java中实现多态的机制是什么?

父类或接口定义的引用变量可以指向子类或实现类的实例对象,而程序调用的方法在运行期才动态绑定,就是引用变量所指向的具体实现对象的方法,也就是内存里正在运行的那个对象的方法,而不是引用变量的类型中定义的方法.

使用instanceof时二边的操作数要么相同,要么有父子继承关系


16、组合【持有对方引用】【外观模式】

    

17、通过继承中超类对象引用变量引用子类对象来实现

    通过接口类型变量引用实现接口的类的对象来实现


18、一个空类型可以调用其本身类型的静态成员

如:MyClass m=null;    //m为空

System.out.println(m.a);

m.run();

class MyClass

{

public static int a;

public static void run()

{

System.out.println("静态方法");

}

}


19、Integer包装类为缓存一个-128到127数组,如果二个Integer变量比较,在缓存的数之类的会返回true,超过的则返回false


20、java为每个包装类都提供了一个compareTo()来比较二个包装类变量的大小,所以比较时应该用这个方法


21、String StringBufferequals比较相同的字符串会返回false

        StringBuffer没有重写equals


22、java提供的8个包装类和String类都是不可变类

23、抽象类的构造器不能用于创建实例,主要是用于被其子类调用

24、abstract 不能与final   static  private 同时使用,也不能修饰构造方法和成员变量

25、接口里所有Field都是public static final的,所有方法都 public abstract 的

26、接口可以被接口多继承,被类和抽象类多实现


--------------文档注释【javadoc】---------------------

@author  指定java程序的作者

@version 指定源文件的版本

@deprecated  不推荐使用的方法

@param   方法的参数说明信息

@return 方法的返回值说明信息

@exception 抛出异常的类型

@thows:抛出的异常















评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值