Java oop 題與代碼4:public void say(),this,ShouRu( String ZhiWei)

package b;
public class Student {//總結的步驟:1.先定義創(chuàng)建一個類
private String name;
private String sex;
private int age;//(總結的語法例子)
//定義構造方法
private int ShouRu;
public Student(String name,String sex,int age){
this.name=name;
this.sex=sex;
this.age=age;
}
//介紹自己的方法
public void say(){? ? ? ? ? //?只有public(訪問修飾符,定義訪問權限)??void與方法名()??,則為無參/*“參”:()中的”數據類型? ?變量名“*/無返(return)??,? ? ?()中可以寫形參(參數)列表,或稱作形式參數,
System.out.println("我的姓名為"+this.name+"性別為"+this.sex+"年齡為"+this.age);
}
public String getName() {
return name;//返回值,無?void?就要return,有void就不要return
}
public void setName(String name) {
this.name = name;/*java中this有兩種用法: 1、代表當前類public class Dog{ ? ? private String name; ? ? private float age; ? ? public setName(String name){ ? ? ? ? ? this.name = name; ? ? } ? ?....... }這里的this就代表的當前的這個Dog類。this.name可以理解為dog.name,只是理解,不是等于。 2、在構造函數中的使用public class Dog{ ? ? private String name; ? ? private int age; ? ? //有一個參數的構造函數 ? ? public Dog(String name){ ? ? ? ? ?this.name = name; ? ? } ? ? public Dog(String name,int age){ ? ? ? ? ? this.name = name; ? ? ? ? ? this.age = age; ? ? } ? ? //這個無參構造方法里調用的有兩個參數的構造方法,這個也就是this的第二種用法了! ? ? public Dog(){ ? ? ? ? ? this("nihao",20); ? ? } }*/
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public int getAge() {/*A打寫只是業(yè)界的習慣,不大寫也不會錯,但最好去大寫(類名的首字母也一樣)在java中,為了保證數據的安全性,我們會把數據定義為private等(私有、封裝),如果想要調用就會用到set()方法與get方法或者構造函數方法。這里說的是第一種方法,set()與get(),既然說到這個,就得說一下封裝的概念。
封裝:private私有化成員屬性,提供公開public的getter/setter
Setter:賦值 Getter:取值,在哪兒用:在構造方法中初始化屬性值的用?。。。?!或者對象名.set/get()進行使用!??!
好處:隱藏內部實現細節(jié),保證代碼的安全,同時也可以提升數據的安全性
訪問修飾符,從訪問的范圍由小及大依次是:private? default(當什么都不寫默認就是這個)?? protected?? public
訪問修飾符的作用:可以修飾類、接口、屬性和方法。通常可以通過訪問修飾符來改變所修飾對象的可訪問范圍。
基本用法:
import java.util.Scanner;
class Stutent1{
??? private String name;
??? private int age;
??? public String getName() {
??????? return name;
??? }
??? public void setName(String name) {
??????? this.name = name;
??? }
??? public int getAge() {
??????? return age;
??? }
??? public void setAge(int age) {
??????????? this.age = age;
??? }
??? public void showStu1(){
??????? System.out.println("學生叫做"+name+",年齡"+age);
??? }
}
public class Stutent1Test {
??? public static void main(String[] args) {
??????? Scanner input=new Scanner(System.in);
??????? Stutent1 stutent1=new Stutent1();
??????? System.out.println("請輸入姓名");
??????? stutent1.setName(input.next());
??????? System.out.println("請輸入年齡");
??????? stutent1.setAge(input.nextInt());
??????? stutent1.showStu1();
??? }
}

?
?
*/
return age;
}
public void setAge(int age) {
this.age = age;
}
public double ShouRu( String ZhiWei,String Name) {
this.name=Name;
return this.ShouRu;/*因為沒void,所以為了不報錯,而要用return。
return的用法?返回值的規(guī)則 1.可以在具有對象引用返回類型的方法中返回null ? public Button doStuff(){ ? ? ?return null; ? } 2.數組是完全合法的返回類型 ? public String[] go(){ ? ? ?return new String[]{"wangsan","wangsan","wangsi"}; ? } 3.在具有基本返回類型的方法內,可以返回任何值或變量,只要他們可以隱式轉換成所聲明的返回類型 ? public int foo(){ ? ? ? char c=‘c’; ? ? ? return c;//char可以轉化成int ? }4.在具有基本返回類型的方法內,可以返回任何值或變量,只要他們可以顯示強制轉換成所聲明的返回類型(這個不舉例子了) 5.一定不能從返回類型為void的方法返回任何值,當然可以用return中斷程序。 ?public void bar(int a){ ? ? //負數則中斷操作, ? ? ?if(a<0){ ? ? ? ? ?return; ? ? ?} ? ? //do other things ?} 6.在具有對象引用返回類型的方法內,可以返回任何值或變量,只要他們可以隱式轉換成所聲明的返回類型(通過is-a測試即可) ? public Animal getAnimal(){ ? ? ?return new Dog();//只要Dog繼承Animal即可 ? }*/
}
public void setShouRu(int ShouRu) {
this.ShouRu = ShouRu;
}
public int mianji() {
return (int) this.ShouRu;
}
public static void main(String[] args) {
Student a=new Student("張三","男",33);//新建一個對象,對象名為a
Student b=new Student("李四","女",22);
a.say();//調用函數,個人調用函數語法:對象名.函數名()
b.say();
}
}