1、类的访问权限:

public;跨程序集,命名空间,必须被using引用;

internal:默认当前命名空间;

2、类成员的访问权限:

private:私有的,只能当前类;

protecte:受保护的,当前类以及子类

public:公共的,跨程序集;

internal:当前命名空间,但是随着类的范围而定,当类为public时,那么internal

成员也可以在其他的命名空间访问

3、如果某个类没有任何可访问性关键字在它的前面,则它就是默认internal

但是,在类中,如果省略类成员的可访问性关键字,默认为private。

  class Animal
{
public string name; public void huidong()
{
Console.WriteLine("动物会动");
}
}
class cat : Animal
{
public string shangshu; public void hanshu()
{
Console.WriteLine("猫会上树");
}//如果父类中有protected成员,可以在子类中直接访问
} cat c = new cat();
c.name = "猫";//子类继承父类,一个子类只能继承一个父类
//当子类继承父类之后,就拥有了父类的公共方法和属性
c.shangshu="上树";
c.huidong();
c.hanshu();
Animal a = c;//子类对象可以直接转换成父类对象 cat c1 = (cat)a;//但是父类不能直接转换成子类对象,必须显示转换
//当父类对象是有子类对象转换来的时候,父类对象不拥有 子类的属性和方法
//例;父类 a 是由子类 c 转换来的,a 不拥有c的属性 c1.name = "老猫";//只有子类对象转换来的父类对象,才能转换为子类对象
Console.WriteLine(c.name);
Console.ReadLine();
/*对象的等号赋值:
Animal a = c; cat c1 = (cat)a; c1.name = "老猫";
以类cat创建一个对象c(包含cat 的属性和方法),a=c代表对象a和对象c具有相同的指向,但是由于父类
不能拥有子类的属性和方法,所以a只能拥有父类的属性和方法;
当由子类转换来的父类转换回子类时,对象c1和对象a具有相同的指向
*/

C#面向对象 类的继承的更多相关文章

  1. Lua面向对象----类、继承、多继承、单例的实现

    (本文转载)学习之用,侵权立删! 原文地址   http://blog.csdn.net/y_23k_bug/article/details/19965877?utm_source=tuicool&a ...

  2. js面向对象--类式继承

    //待研究//类式继承 //js中模拟类式继承的3个函数 //简单的辅助函数,让你可以将新函数绑定到对象的 prototype 上 Function.prototype.method = functi ...

  3. [Java学习]面向对象-类的继承;方法覆盖

    一.类的继承 实现方法: public Class SubClass extends SuperClass{ } 继承最基本作用: 代码重用. 继承最重要的作用: 方法可以重写. 关于类的继承: 子类 ...

  4. Python3 面向对象-类的继承与派生

    1.什么是继承? 继承是一种创建新类的方式,新建的类可以继承一个或多个父类(python支持多继承),父类可称为基类或超类,新建的类称为派生类和或子类. 子类会遗传父类的属性,从而解决代码重用问题. ...

  5. java面向对象类的继承~ 匿名类 ;多态特性;强制类型转换

    类的继承 创建子类语法:     修饰符 class 子类名 extends 父类名{        } 匿名子类语法: 直接实例化,过程中通过匿名类 继承父类,在实例化过程中将子类匿名 <父类 ...

  6. Python面向对象—类的继承

    一个子类可以继承父类的所有属性,不管是父类的数据属性还是方法. class Father(object): num = 0 def __init__(self): print "I'm Pa ...

  7. Python 基础之面向对象类的继承与多态

    一.继承 定义:一个类除了拥有自身的属性方法之外,还拥有另外一个类的属性和方法继承: 1.单继承 2.多继承子类: 一个类继承了另外一个类,那么这个类是子类(衍生类)父类:一个类继承了另外一个类,被继 ...

  8. 【PHP面向对象(OOP)编程入门教程】11.类的继承

    继承作为面向对象的三个重要特性的一个方面,在面向对象的领域有着及其重要的作用,好像没听说哪个面向对象的语言不支持继承. 继承是PHP5面象对象程序设计的重要特性之一,它是指建立一个新的派生类,从一个或 ...

  9. 【游戏开发】在Lua中实现面向对象特性——模拟类、继承、多态

    一.简介 Lua是一门非常强大.非常灵活的脚本语言,自它从发明以来,无数的游戏使用了Lua作为开发语言.但是作为一款脚本语言,Lua也有着自己的不足,那就是它本身并没有提供面向对象的特性,而游戏开发是 ...

随机推荐

  1. HTTP的基本原理

    用户访问万维网文档,万维网文档之间的链接以及万维网文档中数据传送到用户计算机,这些功能的实现都是由超文本传输协议 HTTP(HyperTextTransfer Protocol) 负责完成的. HTT ...

  2. ClickHouse之访问权限控制

    研究ClickHouse也有几周了,今天来和大家说说ClickHouse的访问权限是怎么做的,ClickHouse不像MySQL那样,直接创建用户,而是需要在配置文件里面添加用户,一个简单的例子如下: ...

  3. linux下umask的使用讲解

    最近开始学习linux ,看完马哥的linux课程关于umask的这个部分, 写这篇博客希望加深下我对umask的理解 和对umask不太清楚的博友一些帮助. 1 umask 是什么 当我们登录系统之 ...

  4. Eclipse中Maven插件的使用技巧及原理

    原创作品,可以转载,但是请标注出处地址:http://www.cnblogs.com/V1haoge/p/6698699.html 题目有点大,这里只是自己对Maven插件的一些使用总结,可能会涉及到 ...

  5. js_ajax模拟form表单提交_多文件上传_支持单个删除

    需求场景: 用一个input type="file"按钮上传多张图片,可多次上传,可单独删除,最后使用ajax模拟form表单提交功能提交到指定方法中: 问题:由于只有一个file ...

  6. 结构型---外观模式(Facade Pattern)

    定义 外观模式提供了一个统一的接口,用来访问子系统中的一群接口.外观定义了一个高层接口,让子系统更容易使用.使用外观模式时,我们创建了一个统一的类,用来包装子系统中一个或多个复杂的类,客户端可以直接通 ...

  7. mybatis_01简介

    1.1 MyBatis MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名 ...

  8. Spring Boot Docker 实战

    Spring Boot Docker 开发环境 开发工具: Intellij IDEA 2018.2.6 springboot: 2.0.6.RELEASE jdk: 1.8.0_192 maven: ...

  9. 【JDK和Open JDK】平常使用的JDK和Open JDK有什么区别

    注意到这个问题,是在CentOS7上安装JDK的时候,查找相关的资料,发现安装JDK之前都需要检查或卸载系统上原生的Open JDK,这才引起了注意. 到了这里,引用查到的一篇说明. 转自:http: ...

  10. Java8 默认方法

    概述 Java8新增了接口的默认方法.使用default关键字. 默认方法就是接口可以有实现方法,而且不需要实现类来实现其方法.相对于JDK1.8之前的接口来说,新增了可以接口中实现方法. 可以说在接 ...