java学习3--Java 中包的概念,类的说明符与内部类

1、包

package  mybo;

mybo包下的类在硬盘上都存在mybo的文件夹下,执行类时需要确定文件夹路径。

2、类的说明符

类的访问说明符:public   default

public的类可以被包外的包里的类访问,default的类只能被同一包下的类访问。

类的其他修饰符:final  ,abstract

final的类不能被继承。

3、方法的说明符

public ,protected,default ,private

同类:这四类方法都可以进行访问

同包不同类:只有private的方法不能被访问

不同包但是之间有父子关系的:只有public,protected的方法才可以访问

通用的,不同包也不存在继承关系的:只有public的可以访问

其他的方法修饰符:

static final native abstract ,synchronized

final的方法:为了确保某个方法在被继承过程中被子类覆盖或者修改,那就声明为final

class中的所有的private和static方法都是final的。

4、抽象方法和抽象类

抽象方法没有函数体。

抽象类不能进行实例化对象。

5、垃圾回收

finalize()函数,垃圾收集器在执行前会调动此函数,一般垃圾回收再虚拟机中以低线程执行,只要当内存感觉不够的时候才会允许垃圾收集器。

6、接口

接口的方法都是默认的public abstract的,所以我们在实现一个接口时,需要用public声明。

在接口中声明方法时,不能使用native static final private protected synchronized.

接口可以用public  default修饰

接口可以用数据成员,这些数据成员默认是public static  final 即共有的静态常量。

7、内部类

在一个类中定义另一个类叫做内部类,

内部类可以将逻辑上相关的类串联起来。并由外部类控制内部类的可见性。

内部类字节码的文件名:外部类名¥内部类名组成

当我们创建了一个内部类,其对象就拥有了与外部类对象的一直关系,这是通过一直特殊的this reference形成的。

(使用new创建的对象保存在堆内存中,其引用保存在栈内存中,)

内部类可以访问外部类的所有的成员,主要有你对象中保存了外部类的this对象。

内部类访问自身的成员变量:this.X,访问外部类的成员变量:O.this.X(o是外部类,y是内部类名)

内部类不能用new 去直接创建,而是o.new y() (o=new O())

内部类的修饰内同于类中的方法(public,protect default  private。。。)

当内部类被定义为static时,我们就不需要声明外部类的对象了,就可以直接访问内部类,同时内部类不能访问外部类的非静态方法和变量了。

没有用static修饰内部类时,其不能有静态的方法。

内部类的继承: 派生类在产生对象时会去先调用父类的构造函数,这就需要内部类的对象,而内部类的对象需要先产生外部类,从而建立内部类到外部类的引用关系,

故派生类的构造函数需要传入外部类的对象,然后通过外部类对象.super()方式来建立从内部类对象到指定外部类的引用关系,例如:

public  class test extends outer.inner{

	/**
	 * @param args
	 */
	test(outer io)
	{
	  io.super();
	}
	public static void main(String[] args) {
		// TODO Auto-generated method stub
      outer ou=new outer();
      test ts=new test(ou);
	}

}

8、异常处理

对于一般可能存在发生异常的方法,通常在方法后面throws exception 来抛出异常。而在调用方法时抛出的异常需要去捕获否则编译出错,当然也可以再次抛出将异常抛给其他方法。

语法:try/catch/catch..../finally,finally的语句无论有没有发生异常都会执行。

System.exite

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值