zoukankan      html  css  js  c++  java
  • java代码。从来没想过java里的继承是多么的难懂。如哲学

    总结:实例。。

    这里不加super("aaa",32);

    运行:父类和子类的姓名,年龄是一样的。那这个super为什么没效果呢?

    显示:class:Ji姓名是 小红年龄是:20课程编号是:1
    我叫:浪浪,年龄:20

    package com.addd;
    //构造方法不能被继承,只能是调用
    //属性不能被继承,方法可以
    //关于继承练习啊
    class fjdsk {
    	String name;
    	int age;
    
    	public fjdsk() {
    		name = "杰伦";
    		age = 33;
    	}
    
    	public fjdsk(String a, int b) {
    		name = a;
    		age = b;
    	}
    
    	public void print() {
    		System.out.println("我叫:" + name + ",年龄:" + age);
    	}
    
    }
    
    // 当子类没有
    class Ji extends fjdsk {
    	int classno;
    
    	// public Ji(){}
    	// String name;这里的姓名是公共成员变量
    	public Ji() {// 子类不声明姓名那么父类子类公共。用同一个姓名,否在各用个的。
    		super("泡泡",32);//这里子类还没有声明姓名的属性,这个父类的姓名还是传的参数,而不是"泡泡"
    		name = "小红";
    		age = 20;
    		classno = 1;
    
    	}// 继承是指对象,直接使用另一个对象的属性和方法。比如水果是父类。它的子类有苹果,葡萄,西瓜,等等。那么子类定义的时候,颜色,属性就不必重新定义了
    		// 在这里我也发现了,虽然子类中没有name,age,属性,但构造方法传值时,并不报错啊--------子类继承父类的属性
    
    	public Ji(String f, int g, int c) {// 子类继承了父类的属性,那么这里的父类的属性值是子类的。因为参数是子类传的参数。
    		super(f, g);// 如果子类这里有参构造方法参数变了,那么继承里的参数也变了。
    		name = f;
    		age = g;// 运行结果显示,父类的姓名和年龄都来自与子类无参构造方法。因为父类的构造方法我也不知道,为什么不用,
    		classno = c;
    	}
    
    	// /父类的无参构造方法这里子类直接使用了
    	public void sprint() {
    		System.out.println("class:Ji" + "姓名是:" + name + "年龄是:" + age + "课程编号是:"
    				+ classno);
    	}
    
    }
    

      

  • 相关阅读:
    侧滑的一个注意
    viewpager+fragment结合
    webview
    动画
    <context:annotation-config> 和 <context:component-scan>的区别
    spring mvc 原理及应用
    HDU
    使用Log4Net将系统日志信息记录到记事本和数据库中
    chromium for android GPU进程结构分析
    【云图】怎样制作全国KTV查询系统?
  • 原文地址:https://www.cnblogs.com/langlove/p/3438606.html
Copyright © 2011-2022 走看看