一、继承
- 继承中的成员方法的访问:
如果子类和父类的成员方法名称不一致,分别访问即可!
子类和父类的成员方法名称一致,
子类中存在,访问子类的;
如果不存在,访问父类,如果父类没有,报错!
举例:
//定义一个父类
class Fu{
public void method(){
System.out.println("method fu...");
}
}
//子类
class Zi extends Fu{
public void show(){
System.out.println("show zi...");
}
public void method(){
System.out.println("method zi...");
}
}
//测试类
public class ExtendsDemo {
public static void main(String[] args) {
//创建子类对象
Zi z = new Zi() ;
z.show();
z.method();
}
}
- 成员方法的分类:
是否存在返回值,是否带参
根据具体需求然后定义相对应的功能!
参数类型:
基本类型/引用类型
返回值类型:
基本类型/引用类型
举例:
//定义一个父类
class Father{
//带参的,没有返回值类型
public void show(String str){
System.out.println(str);
}
//带参的,有返回值类型的
public String method(int num){
return "helloworld"+num ;
}
}
//子类
class Son extends Father{
//子类的成员方法
//不带参的,没有返回值的
public void function(){
System.out.println("function son...");
}
//不带参的,有返回值的
public String function2(){
return "JavaEE" ;
}
}
//测试类
public class ExtendsDemo2 {
public static void main(String[] args) {
//创建子类对象
Son s = new Son() ;
s.show("helloworld,javaee");
String str = s.method(100);
System.out.println(str);
s.function();
String str2 = s.function2();
System.out.println(str2);
}
}
-
final关键字修饰基本类型/引用类型的区别
final:本身:最终的,无法更改的 状态修饰符当final修饰基本数据类型,基本数据类型的值不能再改变,只能赋值一次!
开发中,定义基本数据类型的常量:
在一个类的成员位置:
public static final int xxx = xx ;当final修饰引用数据类型,引用数据类型的地址值不能在改变!
在开发中, 在一个类中引用类一个类的实例!
举例:
class Demo{
//传统定义方式
public static final int s1 = 100 ;
public static final int s2 = 200 ;
public static final int s3 = 300 ;
public static final int s4 = 400 ;
public static final String str1 = "FRONT" ;
public static final String str2 = "BEHIND" ;
public static final String str3 = "LEFT" ;
public static final String str4 = "RIGHT" ;
//常量:引用类型
public static final Student s = new Student() ; //静态实例变量
}
enum Demo2{
//枚举类型(JDK5以后的枚举)
//一堆字符串常量
FRONT,BEHIND,LEFT,RIGHT;
}
//定义学生类
class Student{
int age = 20 ; //成员位置
}
//测试类
public class FinalDemo {
public static void main(String[] args) {
//定义一个变量:
int num = 100 ;
System.out.println(num);//这是一个变量
System.out.println("--------------------");
//定义final修饰的变量
final int num2 ;//final修饰的基本数据类型的变量
num2 = 200 ; //只能赋值一次,常驻内存(已经是常量:自定义常量)
System.out.println(num2);
// num2 = 300 ;
System.out.println("---------------------")<