Java面向對象基礎教學(三)
包相當于文件夾,把不同類型的文檔歸類,分別放到不同的文件夾中
語法:
package <包名>;
聲明一個包的語句必須放在類中的第一行
包的導入:import <包名>.<類名>;也可以
import <包名>.*;
2.Java面向對象程序設計三大重要特征:(1)封裝:將類的某些信息隱藏在類的內部,不允許外部程序直接訪問,而是通過該類提供的方法來實現對隱藏信息的訪問和操作。
例如:
public class Person{ private String name; private int age; public int getAge(){ return age; } public String getName(){ return name; } public void setAge(int age){ this.age = age; } public void setName(String name){ this.name = name; }}(2)繼承extends:
指的是繼承父類所以的非私有的屬性和方法
語法:
[修飾符] class 子類名 [extends 父類名]{//類定義部分}
例如:
public class People{ String name; String sex; int age; public void talk() { System.out.println('我是男孩');} public static void main(String[] args) {// TODO 自動生成的方法存根People p = new Boy();p.talk();}class Boy extends People{ }
運行結果如下:
多態又分為重載和重寫
一. 重載:方法的重載,指的是同一個類中,可以有多個相同的方法名,但這些方法的參數必須不同
例如:
class math {public int add(int a,int b) {return a+b;}public double add(int a,double b) {return a+b;}public double add(double a,double b) {return a+b;}}
注意:(1)同一個類中方法名相同,參數列表不同
(2)返回值類型不能用于區分方法的重載
二.重寫:
子類與父類之間,方法名與參數相同,代碼不同
例如:
public class People{ String name;String sex;int age; public void talk(){ System.out.println('我是男孩'); }}class Boy extends People{ public void talk() {//代碼塊; }}3.instanceof 運算符
a instanceof B 判斷對象a是不是由B類創建的,如果條件成立,則返回true,否則返回false
例如:
public class People { String name; String sex; int age; public void talk() { System.out.println('我是男孩'); }public static void main(String[] args) {// TODO 自動生成的方法存根People p = new Boy();if (p instanceof Boy) {Boy b = (Boy)p;b.talk();}else {p.talk();}}}class Boy extends People{ public void talk() { }} 總結
本篇文章就到這里了,希望可以對你有所幫助,也希望您能夠多多關注好吧啦網的更多內容!
相關文章: