/*編寫一個(gè)學(xué)生類 有年齡 英語(yǔ)逐沙、數(shù)學(xué)哲思、計(jì)算機(jī)三門成績(jī) 求平均分、最高分吩案、最低分 */
package test;
class Student{
private String name;
private int age;
private float computer;
private float math;
private float english;
//構(gòu)造函數(shù)
public Student(String n,int a,float e,float m,float c) {
this.setName(n);
this.setAge(a);
this.setMath(m);
this.setEnglish(e);
this.setComputer(c);
}
public float sum() {
return english + math + computer;
}
public float avg() {
return this.sum()/3;
}
public float max() {
float max = english>math?english:math;
max = max>computer?max:computer;
return max;
}
public float min() {
float min = english<math?english:math;
min = min<computer?min:computer;
return min;
}
public String getInfo() {
return "學(xué)生信息:\n" +
"\t|-姓名:" + this.getName() + "\n" +
"\t|-年齡:" + this.getAge() + "\n" +
"\t|-數(shù)學(xué)成績(jī):" + this.getMath() + "\n" +
"\t|-英語(yǔ)成績(jī):" + this.getEnglish() + "\n" +
"\t|-計(jì)算機(jī)成績(jī):" + this.getComputer() ;
}
public void setName(String n) {
name = n;
}
public void setAge(int a){
age = a;
}
public void setMath(float m) {
math = m;
}
public void setEnglish(float e) {
english = e;
}
public void setComputer(float c) {
computer = c;
}
public String getName(){
return name;
}
public int getAge(){
return age;
}
public float getMath(){
return math;
}
public float getEnglish(){
return english;
}
public float getComputer() {
return computer;
}
}
public class ooDemo12 {
public static void main(String args[]) {
// System.out.println("Hello World");
Student stu = new Student("張三",30,89.0f,92.5f,76.5f);
System.out.println("總分:" + stu.sum());
System.out.println("平均分:" + stu.avg());
System.out.println("最高分:" + stu.max());
System.out.println("最低分:" + stu.min());
System.out.println(stu.getInfo());
}
};
>>>
總分:258.0
平均分:86.0
最高分:92.5
最低分:76.5
學(xué)生信息:
|-姓名:張三
|-年齡:30
|-數(shù)學(xué)成績(jī):92.5
|-英語(yǔ)成績(jī):89.0
|-計(jì)算機(jī)成績(jī):76.5
總結(jié):
1.類與對(duì)象的關(guān)系:
- 類是對(duì)象的模板棚赔,對(duì)象是類的實(shí)例
2.垃圾的產(chǎn)生
3.對(duì)象的產(chǎn)生格式:
- 聲明對(duì)象:類名稱 對(duì)象名稱 = null;如果直接使用此對(duì)象,會(huì)出現(xiàn)空指向異常
- 實(shí)例化對(duì)象:對(duì)象名稱=new 類名稱(); //開(kāi)辟堆內(nèi)存空間务热,才可以直接使用
4.封裝性:private忆嗜,以及setter、getter
5.構(gòu)造方法:
- 與類名相同的方法
- 無(wú)返回值聲明
- 如果一個(gè)類中沒(méi)有明確聲明一個(gè)構(gòu)造函數(shù)崎岂,則會(huì)自動(dòng)生成一個(gè)什么都不做的構(gòu)造函數(shù)
- 構(gòu)造方法允許重載