1.修改 list.get(i).name = name_1;一、封裝 1.成員變數增加private,在其他類訪問成員變數,無法訪問 2.無關成員方法,因為方法還用public來修飾 作用: 1、提高了代碼的復用性。 2、隱藏了實現細節,還要對外提供可以訪問的方式。便於調用者的使用。這是核心之一, ...
1.修改 list.get(i).name = name_1;
一、封裝
1.成員變數增加private,在其他類訪問成員變數,無法訪問
2.無關成員方法,因為方法還用public來修飾
作用:
1、提高了代碼的復用性。
2、隱藏了實現細節,還要對外提供可以訪問的方式。便於調用者的使用。這是核心之一,也可以理解為就是封裝的概念。
3、提高了安全性。
通過set賦值,get取值;
成員變數:
1.成員變數系統會自動提供初始化值
2.this:泛指對象,具體指哪個對象,不確定;誰調用this,this就代表它;
3.this.來區別成員變數和局部變數
二、類的構造:
1.成員變數
2.成員方法
3.一個或多個構造方法
構造方法:class Student{
public Student{
}
}
作用:提供初始化值
1 /* 2 實現類的封裝,set,get的編寫 3 實現簡單的增刪改查的功能,如有錯誤請及時指正, 4 歡迎和我一起探討。 5 */ 6 import java.util.*; 7 class studentDemo 8 { 9 public static void main(String[] args) 10 { 11 choose(); 12 //System.out.println("Hello World!"); 13 } 14 public static void list(){ 15 System.out.println("1.查看學生信息"+"\n"+"2.修改學生信息"+"\n"+"3.添加學生信息"+"\n"+"4.刪除學生信息"+"\n"+"5.退出系統"); 16 } 17 public static void choose(){ 18 ArrayList<Students> list = new ArrayList<Students>(); 19 int_0(list); 20 while(true){ 21 list(); 22 switch(new Scanner(System.in).nextInt()){ 23 case 1:int_1(list);break; 24 case 2:int_2(list);break; 25 case 3:int_3(list);break; 26 case 4:int_4(list);break; 27 case 5:System.out.println("您已成功退出");return; 28 default :System.out.println("請輸入正確的序號");return; 29 } 30 } 31 } 32 //實例化 33 public static void int_0(ArrayList<Students> list){ 34 Students s = new Students("黃渤",101,99.3); 35 Students s1 = new Students("鄧超",102,93.3); 36 Students s2 = new Students("孫儷",108,99.9); 37 list.add(s); 38 list.add(s1); 39 list.add(s2); 40 } 41 //1鍵功能 42 public static void int_1(ArrayList<Students> list){ 43 for(int i = 0;i<list.size();i++){ 44 System.out.println("姓名"+ list.get(i).getName() +"\t"+"學號"+ list.get(i).getXuehao() +"\t"+"\t"+"成績"+ list.get(i).getSecord() +"\t"); 45 } 46 } 47 //2鍵功能修改 48 public static void int_2(ArrayList<Students> list){ 49 System.out.println("請輸入您想要修改的姓名:"); 50 String name = new Scanner(System.in).next(); 51 for(int i = 0;i<list.size();i++){ 52 if(name.equals(list.get(i).getName())){ 53 System.out.println("您想更正的姓名"); 54 list.get(i).setName(new Scanner(System.in).next()) ; 55 System.out.println("您更改的學號是"); 56 list.get(i).setXuehao(new Scanner(System.in).nextInt()); 57 System.out.println("您更改的成績是"); 58 list.get(i).setSecord(new Scanner(System.in).nextDouble()); 59 System.out.println("更改成功"); 60 return; 61 } 62 } 63 System.out.println("請正確輸入:");int_2(list);return; 64 } 65 //3鍵功能 66 public static void int_3(ArrayList<Students> list){ 67 Students s = new Students(); 68 System.out.println("請輸入你想要增加的姓名"); 69 s.setName(new Scanner(System.in).next()); 70 System.out.println("您增加的學號是"); 71 s.setXuehao(new Scanner(System.in).nextInt()); 72 System.out.println("您增加的成績是"); 73 s.setSecord(new Scanner(System.in).nextDouble()); 74 list.add(s); 75 System.out.println("增加成功"); 76 return; 77 } 78 //4鍵功能 79 public static void int_4(ArrayList<Students> list){ 80 System.out.println("請輸入您想刪除的姓名"); 81 String name = new Scanner(System.in).next(); 82 for(int i = 0 ;i<list.size();i++){ 83 if(name.equals(list.get(i).getName())){ 84 list.remove(i); 85 System.out.println("刪除成功"); 86 return; 87 } 88 } 89 System.out.println("請正確輸入:");int_4(list);return; 90 } 91 } 92 class Students 93 { 94 private String name; 95 private int xuehao; 96 private Double secord; 97 //無參 98 public Students(){} 99 //有參 100 public Students(String name,int xuehao,Double secord){ 101 this.name = name; 102 this.xuehao = xuehao; 103 this.secord = secord; 104 } 105 106 //get set Name 107 public String getName(){ 108 return this.name; 109 } 110 public void setName(String name){ 111 this.name = name; 112 } 113 114 //get set xuehao 115 public int getXuehao(){ 116 return this.xuehao; 117 } 118 public void setXuehao(int xuehao){ 119 this.xuehao = xuehao; 120 } 121 122 //get set secord 123 public void setSecord(Double secord){ 124 this.secord = secord; 125 } 126 public Double getSecord(){ 127 return this.secord; 128 } 129 }