設(shè)計一個學(xué)生類(Student
)和它的一個子類——本科生類(Undergraduate
)。要求如下:
(1)Student類有姓名(name
)和年齡(age
)屬性,兩者的訪問權(quán)限為protected
;一個包含兩個參數(shù)的構(gòu)造方法,用于給姓名和年齡屬性賦值;一個show( )
方法用于輸出Student的屬性信息,輸出格式為Student[name=XXX,age=XX]
。
(2)Undergraduate類增加一個專業(yè)(major
)屬性,該屬性的訪問權(quán)限為private
;有一個包含三個參數(shù)的構(gòu)造方法,前兩個參數(shù)用于給繼承的年齡和姓名屬性賦值,第三個參數(shù)給專業(yè)屬性賦值;一個show( )
方法用于輸出Undergraduate的屬性信息,輸出格式為Undergraduate[name=XXX,age=XXX,major=XXX]
。
在測試類Main
的main( )
方法中,調(diào)用Student類的帶參數(shù)的構(gòu)造方法創(chuàng)建對象object1,調(diào)用Undergraduate類的帶參數(shù)的構(gòu)造方法創(chuàng)建對象object2,然后分別調(diào)用它們的show( )方法。
輸入格式:
第一行從鍵盤輸入姓名(字符串)、年齡(整數(shù))給Student類的對象object1,中間以空格隔開。
第二行從鍵盤輸入姓名(字符串)、年齡(整數(shù))、專業(yè)(字符串)給Undergraduate類的對象object2,中間以空格隔開。
輸出格式:
第一行輸出object1的姓名、年齡,格式為:Student[name=XXX,age=XX]
第二行輸出object2的姓名、年齡、專業(yè),格式為:?Undergraduate[name=XXX,age=XXX,major=XXX]
輸入樣例:
在這里給出一組輸入。例如:文章來源:http://www.zghlxwxcb.cn/news/detail-408884.html
張三 12
李四 19 計算機(jī)科學(xué)與技術(shù)
輸出樣例:
在這里給出相應(yīng)的輸出,其中的標(biāo)點符號為英文格式。例如:文章來源地址http://www.zghlxwxcb.cn/news/detail-408884.html
Student[name=張三,age=12]
Undergraduate[name=李四,age=19,major=計算機(jī)科學(xué)與技術(shù)]
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApp1
{
public class Student
{
protected string name;
protected int age;
public string Name
{
get
{
return name;
}
set
{
name = value;
}
}
public int Age
{
get
{
return age;
}
set
{
age = value;
}
}
public virtual void Register(string name,int age)
{
this.name=name;
this.age =age;
}
public virtual void Show()
{
Console.WriteLine("Student[name={0},age={1}]",name,age);
}
}
public class Undergraduate : Student
{
private string major;
public void Register( string name,int age ,string major)
{
base.Register(name, age);
this.major =major;
}
public string Major
{
get
{
return major;
}
set
{
major = value;
}
}
public override void Show()
{
Console.WriteLine("Undergraduate[name={0},age={1},major={2}]", name, age, major);
}
}
class Program
{
static void Main(string[] args)
{
Student object1 = new Student();
string s = Console.ReadLine();
string[] a = s.Split(' ');
object1.Name = Convert.ToString(a[0]);
object1.Age = Convert.ToInt32(a[1]);
Undergraduate object2 = new Undergraduate();
string m = Console.ReadLine();
string[] b = m.Split(' ');
object2.Name = Convert.ToString(b[0]);
object2.Age = Convert.ToInt32(b[1]);
object2.Major = Convert.ToString(b[2]);
object1.Show();
object2.Show();
}
}
}
到了這里,關(guān)于設(shè)計一個學(xué)生類和它的一個子類——本科生類的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!