码迷,mamicode.com
首页 > 其他好文 > 详细

【面向对象】继承(转载)

时间:2017-04-21 14:13:51      阅读:140      评论:0      收藏:0      [点我收藏+]

标签:line   定义   博客   main   public   本质   开发   对象   需要   

【面向对象】继承

1.继承
 
 1)复用:开发只需要定义独有的功能(属性和方法),再复用曾经写过的功能(属性和方法)
   2)extends:继承的关键字
     
    格式:class 子类 extends 父类
   3)子类可以继承父类的属性和方法
 
 4)继承本质:把父类的属性和方法代码拷贝到子类中,在写子类代码时候,可以减少代码量,只需要添加新的部分
 
 5)java中继承是单继承,但可以层层继承
   
 单继承:子类只能有一个直接父类
案例:
public class Demo2 {
public static void main(String[] args){
Bmw bmw = new Bmw();
bmw.name = "haha";
bmw.color = "red";
bmw.no = "w5";
bmw.speed = 268.50;
bmw.start();
System.out.println(bmw.name "." bmw.color "." bmw.no "." bmw.speed);
}
}
class Car{
String name;
String color;
String no;
void start(){
System.out.println("启动");
}
void run(){
System.out.println("奔跑在路上。。。");
}
void stop(){
System.out.println("请注意刹车了!!");
}
}
class Bmw extends Car{
double speed;
}
class Benz extends Car{
double price;
}
2.继承中的构造方法使用:
 
 1)子类不能继承父类的构造方法,子类会默认的调用父类的构造方法
 
 2)父类中有空参的构造方法,子类可以任意设计自己的构造方法
案例:
public class Demo3 {
//父类中含有空参的构造方法,则子类可以任意设计自己的构造方法
public static void main(String[] args){
Emp2 emp2 = new Emp2("吕布",34);
System.out.println(emp2.name "." emp2.age);
}
}
class Emp1{
String name;
int age;
//默认系统提供空参的构造方法
void show(){
System.out.println(name age);
}
}
class Emp2 extends Emp1{
double salay;
Emp2(String name, int age, double salary){
this.name = name;
this.age = age;
this.salay = salary;
}
Emp2(String name, int age){
this.name = name;
this.age = age;
}
}

 
 3)父类中没有空参的构造方法,则子类的构造方法必须要调用父类中带参数的构造方法
super:过去的,曾经的    
     
   
 super(参数):写在子类构造方法的第1行,调用父类中的构造方法。 
案例:
public class Demo4 {
}
class User1{
String name;
String password;
User1(String name, String password){
this.name = name;
this.password = password;
}
}
//父类只有带参数的构造方法的时候,子类就会默认的去调用父类的构造方法
//利用super来调用父类的构造方法
class User2 extends User1{
int age;
User2(String name, String password, int age){
//super(参数 ):根据参数去调用父类中的构造方法,而且super必须写在第1行
super(name,password);
this.age = age;
}
}

【面向对象】继承(转载)

标签:line   定义   博客   main   public   本质   开发   对象   需要   

原文地址:http://www.cnblogs.com/vanya/p/6743346.html

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