Java oop(三個(gè)界面的合格代碼)1:學(xué)生管理系統(tǒng),登入系統(tǒng),查詢(xún),修改

不要寫(xiě)在同一個(gè)界面,要寫(xiě)在多個(gè)界面,這樣看起來(lái)才不亂。



界面一:
package 使用數(shù)組對(duì)象制作學(xué)生成績(jī)管理;//包名
public class admin {//建一個(gè)有修飾符(比如public 等)的admin類(lèi)
private String uname;/*設(shè)變量名的數(shù)據(jù)類(lèi)型(?String 等),即屬性(String? 等),訪(fǎng)問(wèn)修飾符(比如public等)*/
public String getUname() {/*用屬性private 時(shí)要用getXXX(),setXXX()的語(yǔ)句來(lái)得到(?get)與設(shè)置(set)。XXX為變量名。getXXX()的意思是從對(duì)象中獲取屬型*/
return uname;/*一、return語(yǔ)句總是用在方法中,有兩個(gè)作用。 一個(gè)是返回方法指定類(lèi)型的值(這個(gè)值總是確定的)。 一個(gè)是結(jié)束方法的執(zhí)行(僅僅一個(gè)return語(yǔ)句)。 二、實(shí)例1 。 返回一個(gè)String。 private String gets(){ String s = "qw789" ; ? ? ? ?return s ; } 實(shí)例2 -- 結(jié)束程序 private void gets(String s ){ ? ? if ( s == null ){ ? ? ? ? ? ?return ; } System.out.println( "haha" ) ; }
提前從方法中返回,就是提前結(jié)束方法的意思,return 后的代碼將不被執(zhí)行,有時(shí)候也完成指定方法的特定值的結(jié)果。? ? ? ? 返回后的會(huì)到主函數(shù)接收*/
}
public void setUname(String uname) {//setXXX()的意思是為對(duì)象中的屬性賦值
this.uname = uname;/*表明這里(this的英文意思:這個(gè))的uname是return?uname中的uname,利用setXXX()把uname與uname關(guān)聯(lián)了起來(lái),等同了起來(lái),兩者的值會(huì)一直相同,如同兩根繩子系了起來(lái),兩根水管連通了起來(lái)*/
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
private String pwd;//用了private,就會(huì)用getXXX(),setXXX(),先
}
界面二:
package 使用數(shù)組對(duì)象制作學(xué)生成績(jī)管理;//包名
public class student {//先再建一個(gè)有修飾符(比如public 等)的student類(lèi)
private int stuID;
private String stuName;
private String stuClass;
private double stuScore;
public int getStuID() {
return stuID;
}
public void setStuID(int stuID) {/*主函數(shù)里給stuID賦的值會(huì)在這里被int?stuID接收,進(jìn)而被傳到this.stuID 與stuID中,被this.stuID?與stuID接收*/
this.stuID = stuID;
}
public String getStuName() {
return stuName;
}
public void setStuName(String stuName) {
this.stuName = stuName;
}
public String getStuClass() {
return stuClass;
}
public void setStuClass(String stuClass) {
this.stuClass = stuClass;
}
public double getStuScore() {
return stuScore;
}
public void setStuScore(double stuScore) {
this.stuScore = stuScore;
}
public student(int id,String name,String banji,int score){
this.stuID=id;this.stuName=name;//stu表示在?student中
this.stuClass=banji;this.stuScore=score;
}
public void chakan(){
System.out.println("學(xué)生ID:"+this.stuID+"姓名:"+this.stuName+
"班級(jí):"+this.stuClass+"成績(jī):"+this.stuScore);
}
}
界面三:
package 使用數(shù)組對(duì)象制作學(xué)生成績(jī)管理;//包名
import java.util.*;//導(dǎo)入用上Scanner時(shí)要用的包
public class mains {//建第三個(gè)mains類(lèi)
public static void main(String[] args) {
//默認(rèn)添加3名學(xué)生
student[] slist=new student[5];//先定義數(shù)組的長(zhǎng)度
student s1=new student(1,"張三","1班",78);/*把值傳到構(gòu)造函數(shù)public student(int id,String name,String banji,int score){}的里面的變量名中*/
student s2=new student(2,"李四","1班",88);
student s3=new student(3,"王五","1班",98);
slist[0]=s1;slist[1]=s2;slist[2]=s3;//用數(shù)組來(lái)把數(shù)據(jù)裝進(jìn)數(shù)組中
//開(kāi)始執(zhí)行登錄
System.out.println("-----學(xué)生成績(jī)管理系統(tǒng)-----");
Scanner sstring=new Scanner(System.in);
Scanner sint=new Scanner(System.in);
admin users=new admin();//語(yǔ)法:類(lèi)名? 對(duì)象名=new? 類(lèi)名()
while(true){
System.out.println("請(qǐng)輸入你的操作:1.登錄系統(tǒng)? 2.退出系統(tǒng)");
int num=sint.nextInt();
if(num==1){
System.out.println("請(qǐng)輸入用戶(hù)名");
String uname=sstring.next();
System.out.println("請(qǐng)輸入用戶(hù)密碼");
String pwd=sstring.next();
if(uname.equals("123456")&&pwd.equals("654321")){
users.setUname(uname);
users.setPwd(pwd);
System.out.println("登錄成功");
break;
}else{
System.out.println("用戶(hù)名或密碼錯(cuò)誤");
}
}else if(num==2){
System.exit(0);
}else{
System.out.println("輸入錯(cuò)誤");
}
}
//登錄成功查看信息界面
while(true){
System.out.println("管理員:"+users.getUname()+",歡迎你");/
*語(yǔ)法:對(duì)象名.get要引用的變量名*/
System.out.println("請(qǐng)執(zhí)行你的操作:\n1.查詢(xún)所有學(xué)生成績(jī)" +
" 2.修改學(xué)生成績(jī) 3.查詢(xún)單個(gè)學(xué)生成績(jī)? 0退出系統(tǒng)");
int nums=sint.nextInt();/*上面已有Scanner sint=new Scanner(System.in);語(yǔ)法:Scanner? 輸入對(duì)象名=new??Scanner(System.in)*/
if(nums==1){
//查詢(xún)學(xué)生信息
for(int i=0;i<3;i++){
slist[i].chakan();
}
}else if(nums==2){
System.out.println("執(zhí)行修改學(xué)生成績(jī)操作,請(qǐng)輸入你要修改的學(xué)生ID");
int stuid=sint.nextInt();
for(int i=0;i<slist.length;i++){
if(slist[i].getStuID()==stuid){
System.out.println("請(qǐng)輸入學(xué)生名稱(chēng)");
String name=sstring.next();
slist[i].setStuName(name);
System.out.println("請(qǐng)輸入學(xué)生班級(jí)");
String banji=sstring.next();
slist[i].setStuClass(banji);
System.out.println("請(qǐng)輸入學(xué)生成績(jī)");
int score=sint.nextInt();
slist[i].setStuScore(score);/*修改的語(yǔ)法:數(shù)組名[i].set類(lèi)名的前三個(gè)字母要改的變量名(變量名)
System.out.println("修改成功");
break;
}
}
}else if(nums==3){
System.out.println("執(zhí)行查詢(xún)單個(gè)學(xué)生成績(jī)操作");
System.out.println("請(qǐng)輸入你要查詢(xún)學(xué)生的ID編號(hào)");
int bianhao=sint.nextInt();
for(int i=0;i<3;i++){
if(slist[i].getStuID()==bianhao){
slist[i].chakan();
break;
}
}
}else if(nums==0){
System.exit(0);
}else{
System.out.println("輸入錯(cuò)誤");
}
}
}
}

