您好,欢迎来到飒榕旅游知识分享网。
搜索
您的当前位置:首页JAVA_SE_Day11

JAVA_SE_Day11

来源:飒榕旅游知识分享网

package关键字

  • 为了喊好的实现项目中类的管理,提供包的概念
  • 使用package来声明类或接口所属的包,声明在源文件的首行
  • 包属于标识符,需要遵循标识符的命名规范
  • 每"."一次,就代表一层文件目录
  • 同一个包下,不可以命名同名的类或接口

import关键字

  • import : 导入
  • 在源文件中显式的使用import结构导入指定包下的类或接口
  • 声明在包的声明和类的声明之间
  • 需要导入多个结构,并列写出即可
  • 使用“XXX.*”,表示可以导入XXX包下的所有结构
  • 如果使用的类或java.lang包下的,则不需要import(核心类库)
  • 使用的类或接口是本包下的,则不需要再导入可以省略
  • 如果在源文件中使用了不同包下的同名类,则必须至少有一个类需要以全类名的方式来显示( 全类名 包名+类名)
  • 使用"XXX.*"的方式表明可以调用XXX包下的所有结构,但是如果使用的是XXX子包下的类或接口,则需要import XXX.子包名
  • import static 可以导入指定类或接口中的静态结构 (属性 或 方法)

继承性(extends)

继承的优点

  • 减少代码的冗余,提高了代码的复用性
  • 便于功能的扩展
  • 为多态的使用提供了前提

继承的格式 : class A extends B {}

  • A : 子类,派生类,subclass
  • B : 父类,超类,基类,superclass
  • 一旦子类A继承了父类B以后,子类A就获取了父类B中声明的结构,属性和方法
  • 当父类声明为private的属性和方法,子类继承父类以后,子类仍然获取了父类中private的结构
    只是因为封装性的原因,使得子类不能直接调用父类的结构
  • 子类继承父类以后,还可以声明自己特有的属性或方法,实现功能的拓展

继承性的规定

  • 一个类可以被多个子类继承
  • -个类只能有一个父类
  • 子父类是相对的概念
  • 子类直接继承的父类称为: 直接父类 ,子类间接继承的父类称为:间接父类
  • 子类继承父类以后,就获得了直接父类和间接父类中声明的属性和方法

Object

  • 如果没有声明一个类的父类,则此类都继承与java.lang.Object;
  • 所有的java类都直接或间接的继承与java.lang.Object;
import java.util.Arrays;
import static java.lang.System.*;
public class Test {
	public static void main(String[] args) {
		String str = Arrays.toString(new int[] {1,2,3,4});
		out.println(str);
		
		// 继承性
		Person p = new Person();
		p.eat();
		p.sleep();
		
		Stduent s = new Stduent();
		s.eat();
		s.study();
		s.sleep();
		s.sky();
		
		SuperMan ss = new SuperMan();
		out.print(ss.toString());
	}

}
public class SuperMan {
	
	public void sky() {
		System.out.println("sky");
	}

}
public class Person extends SuperMan{
	String name;
	private int age;
	public Person() {
		
	}
	
	public Person(String name, int age) {
		this.name = name;
		this.age = age;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public void eat() {
		System.out.println("eat");
	}
	public void sleep() {
		System.out.println("sleep");
	}
}

public class Stduent extends Person{
//	String name;
//	int age;
	String major;
//	public String getName() {
//		return name;
//	}
//	public void setName(String name) {
//		this.name = name;
//	}
//	public int getAge() {
//		return age;
//	}
//	public void setAge(int age) {
//		this.age = age;
//	}
	public String getMajor() {
		return major;
	}
	public void setMajor(String major) {
		this.major = major;
	}
	public Stduent() {
	}
	public Stduent(String name, int age, String major) {
		this.name = name;
		//  通过提供的公共方法修改属性
		this.setAge(age);
		this.major = major;
	}
//	public void eat() {
//		System.out.println("eat");
//	}
//	public void sleep() {
//		System.out.println("sleep");
//	}
	public void study() {
		System.out.println("study");
	}

}

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- sarr.cn 版权所有 赣ICP备2024042794号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务