目录
目录
一,方法:对象的动作
方法的分类
构造方法:默认创建对象的方法
成员方法:对象可以调用的方法
静态方法:全局静态,根据权限决定是否可以调用
public class Name1 {
public Name1{...} //构造方法
public void funk1(...){...} //成员方法
public static void main( String [] args ){
Name1 n = new Name1 () ;
n.funk1(...) ; //方法调用
}
}
方法重载:同名且参数列表的类型、顺序、个数不同的方法
abstract class ab1{
public void funk1(){} //抽象方法
}
public class Name1 extends ab1 {
public Name1(){} ; //构造方法的重载
public Name1(int age){...} ;
public Name1(String name){...} ;
public void funk1(int age , String name){...} ; //成员方法继承抽象方法的重载
public int funk1(int age , String name , String sex){...} ;
}
方法的参数传递
方法定义时的参数只是一个引用。
方法被调用时,基本数据的值会复制一份到参数地址下,而引用数据类型则是将地址给到参数
二,继承
关键字:extends / super
//父类
class Father{
String name ;
int age = 0 ;
public Father(){
System.out.println("父类的无参构造方法") ; } ;
public Father(String name , int age){
System.out.println("父类的带参构造方法") ; } ;
}
//子类
public class Son extends Father{
String sex ;
public Son(String sex){
super.() ;
this.sex=sex ;
System.out.println("子类运行父类的无参构造方法,自己的带参方法");
}
public Son(String name , int age){
super.(name , age) ;
System.out.println("子类运行父类的有参构造方法,自己的无参方法");
}
public Son(String name , int age , String sex){
super.(name , age) ;
System.out.println("子类运行父类的有参构造方法,自己的有参方法");
}
}
三,抽象类与接口:父类被继承着用
关键字:abstract / interface / implements
//抽象类
public abstract class Ab1{
//**定义属性和构造方法无改变
int age = 0 ;
public Ab1( int age ){
this.age = age}
public abstract void funk1() ; //**只能在抽象类中声明抽象方法,要想实现需要被继承后重写
public void funk2(){} //也能定义普通方法
//**不能有main方法
}
//接口
public interface{
//不能有构造方法
String name = "小明" //接口中的变量默认为常量,默认由public static final修饰
public abstract void funk1() ; //默认public abstract修饰,即只有抽象方法
}
四,封装:利用访问修饰符保护隐私
包的概念:就像一个文件夹和另一个文件夹
关键字:package / import
Java bean:
将数据设为私有,提高程序可维护性,便于修改
getXxx () {return xx;} 作用:能return一个值
setXxx (int xxx) {this.xx=xx;}作用:给变量赋值
五,多态:父类与子类的搭配
//父类
class Animal{
String name ;
String name () { return name;
}
void setName(String name){
this.name=name;
}
}
//子类
class Dog extends Animal{
String getName(){
return name;}
void setName(String name){
this.name=name;}
}
父类 父类引用变量 = new 子类 ( ) ;
引用变量在父类中,其指定的是子类的对象,所以能调用的只有父类和子类共同拥有的方法和属性
子类 子类引用变量 = ( 子类 ) 父类引用变量 ;
逆过来就可以拥有子类单独的方法和属性