程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> java學習中,instanceof 關鍵字 和 final 關鍵字、值的傳遞(java 學習中的小記錄),instanceoffinal

java學習中,instanceof 關鍵字 和 final 關鍵字、值的傳遞(java 學習中的小記錄),instanceoffinal

編輯:JAVA綜合教程

java學習中,instanceof 關鍵字 和 final 關鍵字、值的傳遞(java 學習中的小記錄),instanceoffinal


java學習中,instanceof 關鍵字 和 final 關鍵字、值的傳遞(java 學習中的小記錄)作者:王可利(Star·星星)

 

instanceof 關鍵字

作用:

    1.用來判斷某個對象是否屬於某一個類。

    2.instanceof 關鍵字使用的前提:對象指定的類有繼承關系或者實現關系

    3.強制類型轉換會用到 instanceof 關鍵字。

      如:

      Student s = (Student)new Person();//要想這麼做,必須滿足Student繼承Person。

      boolean res = s instanceof Person 

      if( res){

      Student s = (Student)new Person();

    }

代碼如下:

 1 package study;
 2 
 3 class Person{
 4     String name;
 5     public Person(String name) {
 6         this.name  = name;
 7     }
 8     public Person() {}
 9 }
10 
11 class Student extends Person{
12     
13 }
14 
15 public class star {
16     public static void main(String[] args) {
17         Person star = new Person("星星");        
18         boolean result1 = star instanceof Person;
19         System.out.println(result1);//ture
20         
21         Student s = new Student();//默認父類的無參構造
22         
23         boolean result2 = s instanceof Person;
24         System.out.println(result2);//ture
25     }
26 
27 }

final 關鍵字(修飾符,最終的)

1.如果用一個final 關鍵字修飾一個基本數據類型變量,改變了就不能重新賦值。第一次的結果為最終結果。

2.如果用final修飾引用數據類型,引用數據類型的變量就不能再賦值。

   如:這樣是錯的。

         final Yuan yuan = new Yuan(10);

         yuan = new Yuan(100);//無法重新賦值

3.如果final修飾一個方法,方法就不能被重寫。

4.如果final修飾一個類,那麼這個類就不能被繼承。

5.final 修飾的變量必須要初始化,不然會報錯。

 1 package study;
 2 
 3 class Yuan{
 4     int r;
 5     final double pai = 3.14;//應該是一個不變的量,不然下面參數 給了 不是3.14 就會被修改。類似常量
 6     
 7     public Yuan(int r/*,double pai*/) {
 8         this.r = r;
 9     /*    this.pai = pai;*/
10     }
11     
12     public void area(){
13         System.out.println("圓的面積是"+r*r*pai);
14     }
15 }
16 
17 public class star {
18     public static void main(String[] args) {
19         Yuan yuan = new Yuan(10/*,3.14*/);//不給修飾會被修改
20         yuan.area();
21     }
22 }

如何用final表示常量:

格式:

    public  final  static 基本數據類型  變量名

 

值的傳遞

基本數據類型之間賦值,實際是將變量的值賦給另外一個變量。

參數如果是引用類型,傳遞參數是參數的引用類型數據的地址。

引用類型:類、接口、數組

 

 1 package study;
 2 
 3 public class star {
 4     public static void main(String[] args) {
 5         
 6         //需求:定義兩個整形的數,用一個方法來交換兩個數
 7         int a = 10;
 8         int b = 20;        
 9         change(a, b);
10         System.out.println("a = "+a+",b = "+b);//10.20
11         
12         //需求:定義一個數組,交換兩個數的位置
13         int[] arr = {10,20};
14         changeArr(arr);//20,10
15         System.out.println("arr[0] = "+arr[0]+"arr[1] = "+arr[1]);        
16     }
17     
18     public static void change(int a,int b){
19         int temp = a;
20         a = b;
21         b = temp;
22     }
23     public  static void changeArr(int[] arr){
24         int temp = arr[0];
25         arr[1] = arr[0];
26         arr[0] = temp;
27     }
28 }

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved