Java无难事03

1、包(package):为了便于管理大型软件系统中数目众多的类,解决类命名冲突的问题,java引入了包。
package语句必须是文件中的第一条语句,也就是说,在package语句之前,除了空白和注释之外不能有任何语句;
如果不加package语句,则指定为缺省包或无名包;
包对应着文件系统的目录层次结构;
在package语句中,用“.”来指定包(目录)的层次。
在这里插入图片描述在这里插入图片描述在这里插入图片描述
javac -d . XXX.java 放置生成的类文件的位置为当前目录 (在当前目录生成包)

2、import语句:
引入包中的类:import java.io.File;
引入整个包:import java.io.*;(缺点:占内存,加载时间延长)
在同一个包中的类可以互相引用,无需import;
java.lang包是自动导入的。

3、类的说明符:
类的访问说明符:
public:不同包中的类可以通过import包被访问,或调用完整包名;
在这里插入图片描述在这里插入图片描述
default(不加访问说明符时):只能在同一个包中被访问;
类的其他修饰符:
final:表明这个类是最终的类,不能由这个类派生出其他的子类,不能被继承;
abstract:抽象类

4、方法的说明符:
方法的访问说明符:
public protected default(不加访问说明符时) private
在这里插入图片描述
方法的其他修饰符:
static:class中所有的private和static方法自然就是final,在子类中重写static方
法,编译器在编译时不会报错,但只是在子类中产生新的static方法,并
没有覆盖基类的static方法。
final:为了确保某个函数的行为在继承过程中保持不变,并且不能被重写。
在这里插入图片描述
abstract:在类中没有方法体的方法,就是抽象方法;含有抽象方法的类,即为抽象类;如果一个子类中没有实现抽象基类中所有的抽象方法,则子类也成为一个抽象类;我们可以将一个没有任何抽象方法的类声明为 abstract,避免由这个类产生任何的对象(抽象类不能实例化对象)。
native:是用户在java中可以使用,但不能编写的方法;JNI(java native interface),它允许JVM内部运行的java代码能够与用其他编程语言(如c、c++、汇编语言)编写的应用程序和库进行相互操作;JNI可以理解为java和本地应用程序之间的中介。
synchronized

5、垃圾回收机制:
自动运行的低优先级的线程,在内存不够时自动运行(finalize()方法);
System.gc()运行垃圾回收器;

6、接口(interface):
接口中所有方法都是public abstract;
在接口中声明方法时,不能使用native、static、final、synchronized、private、protected等修饰符;
和public类一样,public接口也必须定义在与接口同名的文件中;
在这里插入图片描述
接口中可以有数据成员,这些成员默认都是public static final;
一个接口可以继承自另一个接口;
java中不允许类的多继承,但允许接口的多继承;interface Sofa extends Suitable,Lie{}
一个接口可以实现多个接口;class Sofa implements Suitable,Lie{ 实现接口Suitable,Lie 中的方法}
一个类在继承另外一个类的同时,可以实现多个接口;class Sofa extends Chair implements Lie,Healthcare{实现接口Lie、Healthcare 中的方法 }

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值