码迷,mamicode.com
首页 > 编程语言 > 详细

JAVA 7 继承

时间:2015-07-25 16:30:37      阅读:117      评论:0      收藏:0      [点我收藏+]

标签:

继承
 
1,提高代码复用性
2,让类与类之间产生关系,有了关系,才会有多态的特性
3,必须是类与类之间有所属关系才可以继承。看父类的所有方法属性在子类中是否都必须具备。
 
Java只支持单继承,不支持多继承,多继承容易带来安全隐患。
使用库的时候:
查阅父类的方法,使用子类创建对象,因为父类可能不能创建对象,子类的功能最全。
 
class Zx
{
 public static void main(String []arr)
 {
  Zi a = new Zi();
  System.out.println(a.num); //会打印5
a.show();//会打印4
 }
}
 
class Fu
{
 
 int num  = 4;
void show()
{
System.out.println(4);    //super 换成 this 和空 都会打印4
}
}
 
class Zi extends Fu
{
 int num=5;
void show()
{
System.out.println(4);    //super 换成 this 和空 都会打印4
}
}
 
 
 
super:代表父类对象的引用
如果子类中出现非私有的同名成员变量时,子类要访问本类中的变量用this.  子类要访问父类中的同名变量,用super
 
 
函数的覆盖/重写
当父子类中有同名函数时,调用子类对象的函数,会执行子类的函数,父类的函数被覆盖。
 
以下程序会打印4
class Zx
{
 public static void main(String []arr)
 {
  Zi a = new Zi();
 
a.show();
 }
}
 
class Fu
{
 
 int num  = 4;
void show()
{
System.out.println(5);    
}
 
}
 
class Zi extends Fu
{
 int num=5;
void show()
{
System.out.println(4);  
}
}
 
 
final:
最终的类不可以被继承,为了避免被子类覆盖功能。
3,被final修饰的方法不可以被覆盖
4,被final修饰的变量是一个常量只能赋值一次。
 
 
接口和抽象类没懂,找本书看看
abstract:抽像
 
1,抽象方法一定定义在抽象类中
2,抽象方法和抽象类被abstract修饰
3,抽象类不可以用new创建对象。
3,抽象类中的方法要被使用,抽象父类必须由子类复写所有抽象方法后后,建立对象使用
作用不懂?
抽象就是有点模糊的意思,还没确定好的意思。

比如我想买件衣服,我只是想买衣服而已,但还没确定是买白色的衣服还是蓝色的衣服,也还没确定是要买短袖还是长袖的衣服。

用到java上,就比方,我要定义一个方法和类。但还没确定怎么去实现它的具体一点的子方法,那我就可以用抽象类或接口。
 
接口:
初期理解:可以认为是一个特殊的抽象类,当抽象类中的方法都是抽象的,那么该类可以提供接口的形式来表示
interface
 
定义格式特点:
1,接口中常见定义:常量,抽象方法。
2,就看中成员都有固定修饰符。
            常量:public static final int a;//int a 也可以,会自动给补上,但是最好要写
            方法:public abstract a(){};//同上
接口中的成员都是public的
 
例如:
class Zx
{
 public static void main(String []arr)
 {
 
 }
}
 
interface Inter
{
 public static final int NUM = 3;
 public abstract void show();
}
 
class Test implements Inter
{
 public void show(){}
}
 
 
 
 
 
 
 
 
 

JAVA 7 继承

标签:

原文地址:http://www.cnblogs.com/hitxx/p/4675968.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!