C#与Python的继承对比介绍。
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了C#与Python的继承对比介绍。,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2724字,纯文字阅读大概需要4分钟。
内容图文
学了下C#面向对象的重要特征---继承,想对比下Python是如何继承的。
先介绍下C#中类是怎么继承的。
创建Person父类;
定义父类共同的属性,比如身份证id,姓名name,年龄age和性别gender;
定义父类自己拥有的方法,比如无参的构造函数和有参的构造函数;
定义父类共同的方法,比如Dispaly。
public class Person
{
//定义Person父类共同属性
private string _id; //身份证id
public string Id
{
get { return _id; }
set { _id = value; }
}
private string _name;//姓名name
public string Name
{
get { return _name; }
set { _name = value; }
}
private int _age; //年龄age
public int Age
{
get { return _age; }
set { _age = value; }
}
private string _gender; //性别gender
public string Gender
{
get { return _gender; }
set { _gender = value; }
}
public Person()
{
}
public Person(string name, int age, string gender)
{
_name = name;
_age = age;
_gender = gender;
}
//Person父类的共有方法
public void Display()
{
Console.WriteLine("姓名:{0},性别:{1},年龄:{2}", this._name, this._gender, this._age);
}
}
创建学生子类,继承Person父类的共同属性和方法。
子类自定义子类拥有的属性:班级名称className,学号classId;
子类自定义子类拥有的方法:Study。
//创建Student,继承Person类
public class Student : Person
{
//定义Student子类的属性
private string _className; //班级名称className
public string ClassName
{
get { return _className; }
set { _className = value; }
}
private string _classId; //学号classId
public string ClassId
{
get { return _classId; }
set { _classId = value; }
}
public Student()
{
}
//定义Student子类独有的方法
public void Study()
{
Console.WriteLine("{0}正在学习...",this.Name);
}
}
在Program.cs中的Main方法中添加一下代码,并进行测试。
class Program
{
static void Main(string[] args)
{
Person objPerson = new Person("人类一号",18,"男");
objPerson.Display();
Student objStudent = new Student();
objStudent.Name = "学生一号";
objStudent.Age = 18;
objStudent.Gender = "女";
objStudent.Display();
objStudent.Study();
Console.ReadKey();
}
}
C#执行结果:
以上是通过C#语言的继承介绍,现在简单的用Python来介绍下Python是如何继承的。
同样的Person父类和Student子类的使用。
class Person:
# 父类共有的属性
name = "人类一号"
age = 18
gender = "男"
def __init__(self):
print("父类默认执行,调用父类的构造方法")
# 创建父类的方法
def parentMethod(self):
print("姓名:%s,年纪:%d,性别:%s" % (Person.name, Person.age, Person.gender))
class Student(Person):
className = "班级一号"
classId = 1001
def __init__(self):
print("子类默认执行,调用子类的构造方法")
def studentMethod(self):
Student.name = "学生一号"
Student.age = 18
Student.gender = "女"
print("姓名:%s,年纪:%d,性别:%s" % (Student.name, Student.age, Student.gender))
print("%s的班级名称是%s,学号是%d" % (Student.name, Student.className, objStudent.classId))
# 创建父类的对象
objPerson = Person()
objPerson.parentMethod()
# 创建子类的对象
objStudent = Student()
objStudent.studentMethod()
Python执行结果:
内容总结
以上是互联网集市为您收集整理的C#与Python的继承对比介绍。全部内容,希望文章能够帮你解决C#与Python的继承对比介绍。所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。