core---java 之接口与内部类(持续更新)

1 接口是什么?

 

接口是用来描述类具备的功能,但是并不给出具体的实现。一个类可以继承1个或者多个借口。通过接口来实现多继承。

 

2接口可以做什么:

 

在接口定义的方法不需要提供关键字public, 因为接口中所有的方法自动属于public的。

接口中可以包含多个方法,可以再接口中定义常量。

 

3接口不能做什么?

 

接口中不能含有实例域,也不能在接口中实现方法。

 

定义一个接口

package six;
/**
  @Title Comparable.java
  @description  TODO
  @author qinpeng
  @date Jul 28, 2009 10:58:04 PM
 */
public interface Comparable {
	
	//接口中定义的方法均为public 
	int comparableTo(Object other);

}

 

 

4 类实现一个接口

 将类声明为实现给定的接口。

 对接口所有的方法实现。

 

package six;
/**
  @Title Employee.java
  @description  TODO
  @author qinpeng
  @date Jul 28, 2009 11:13:37 PM
 */
public class Employee implements Comparable {

	public int comparableTo(Object other) {
		if((Integer)other>0){
			return (Integer)other;
		}
		return 0;
	}

}

 

 4 对象克隆与拷贝

1 对象拷贝

    创建一个对象的新拷贝,他的初始状态和对象是一样的,但是他们终究引用的是同一个对象,也就是说当你修改拷贝对象时,被拷贝对象的状态也会发生改变

public class Copy {
	
	public static void main(String[] args)throws CloneNotSupportedException {
		Employee e = new Employee("pangmeimei","1224",5000D);
		Employee eCopy = e;
		System.out.println(e.getSalary());
		eCopy.setSalary(3000D);
		System.out.println(e.getSalary());

}

    输出结构是:5000

                      3000

    eCopy  是 e 的拷贝对象,当修改eCopy的域时,e 的域也会随之发生改变.

 

    2 克隆:创建一个对象的克隆,他的初始状态和对象一直,并且以后可以改变各自的状态,相互不受影响。

   

package six;

import five.Employee;

/**
  @Title Copy.java
  @description  TODO
  @author qinpeng
  @date Aug 4, 2009 10:17:34 PM
 */
public class Copy {
	
	public static void main(String[] args)throws CloneNotSupportedException {
		Employee e2 = new Employee("pangmeimei","1224",5000D);
		Employee eOri = e2.clone();
		eOri.setSalary(2000D);
		System.out.println(e2.getSalary());
	}

}

   输出:5000

  可以看出,修改克隆对象eOri 的域,对被克隆对象e 没有任何影响。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值