java面向对象的编程的四大特征

抽象(可去掉)

封装

继承

多态


封装:

把抽象出来的数据和对数据的操作封装在一起,数据被保护在内部,程序的其他部分只有通过对授权的操作(成员方法),才能对数据惊醒操作。

访问控制修饰符

public>protected>默认>private




继承


class 子类 extends  父类

子类可以继承父类的public属性、protected属性、public方法 prptected属性


重载

方法重载就是类的同一种功能的多重实现方式,到底采用哪种方法吗,取决于调用者给出的参数。

方法名必须相同

方法参数类型,个数,顺序至少有一个不同

只是方法返回类型不同,不能够构成重载

只是控制访问修饰符不一样,不能够构成重载

public class Test1 {

               public static void main (String args[])

     {

     

          

    }

}


     

class abc

{

     public int getmax(int i,int j)

     {

           if(i>j)

          {

               return i;

          }

           else

          {

               return j;

          }

     }

     

     public float getmax(float a,float b)

     {

           if(a>b)

          {

               return a;

          }




方法覆盖

1 子类的方法的返回类型,参数,方法名称要和父类方法的返回类型,参数,方法名称完全一样。

2 子类方法不能缩小父类访问权限


public class CeShi {


     public static void main(String[] args) {

           // TODO Auto-generated method stub

          cat cat1 = new cat();

          cat1.cry();

     }


}


class Animal

{

     int age;

     String name;

     

     public void cry(){

          System. out.println("动物叫声" );

     }

          

}


class cat extends Animal

{

     //方法覆盖

     public void cry ()

     {

          System. out.print("喵喵叫" );

     }

}








包的三大作用

1区分相同名字的类

2当类很多时,很好的管理类

3控制访问范围


包-打包命令

package com.shunping 


包-命名规范

小写字母  


包-常用的包

java.lang.*     java.util.*

java.net.*      java.awt.*



ublic class Test1 {

     

     

     public static void main (String args[])

     {

     

          Clerk c1 = new Clerk("huangyang" ,26);

          System. out.println(c1.getage());

}

}

     

class Clerk

{

     public String name;

     private int age ;

     

     public Clerk(String name, int age)

     {

           this.name =name;

           this.age =age;

     }

     

     //通过一个成员方法去控制和访问私有的属性

     public int getage()

     {

           return this .age ;

     }

}