Visual C#类的定义及实现方法实例解析

本文实例演示了visual C#下一个类的定义及实现方法,虽然是一个较为基础的C#代码实例,对于新手来说仍然有很好的参考价值。

具体的实例代码如下:

using System;
public class Desk//基类Desk
{
 protected int length;//保护成员
 protected int width;
 protected int height;
 //类Desk的构造函数
 public Desk( )
 {
 length = 0;
 width = 0;
 height = 0;
 }
 //设置Desk的信息
 public void SetInfo( int Len, int Wid, int Hei )
 {
 length = Len;
 width = Wid;
 height = Hei;
 }
 //打印Desk的参数信息
 public void ShowInfo( )
 {
 Console.WriteLine("Length={0} \t Width={1} \t Height={2}", length, width, height);
 }
}
public class Furniture : Desk//定义基类Desk的派生类Furniture
{
 private int price;//私有成员
 //类Furniture的构造函数
 public Furniture ( )
 { //这里会隐式调用基类Desk的构造函数
 //Desk( );//若显示调用会出现错误
 price = 0;
 }
 //重载该类的SetInfo函数
 public void SetInfo( int Len, int Wid, int Hei, int Pri)
 {
 length = Len;
 width = Wid;
 height = Hei;
 price = Pri;
 }
 //新增的函数用以设置价格
 public void SetPri( int Pri)
 {
 price = Pri;
 }
 //重定义ShowInfo函数
 public new void ShowInfo( ) //必须加上关键字new,否则会引发一个生成错误
 {
 Console.WriteLine("Length={0} \t Width={1} \t Height={2} \t Price={3}",length, width, height, price);
 }
}
class Test
{
 public static void Main()
 {
 Furniture fur1 = new Furniture( ); //隐式调用构造函数
 Console.WriteLine("Fur1初始化后的值为:");
 fur1.ShowInfo( ); //显示家具信息
 fur1.SetInfo(80,50,60,350);
 Console.WriteLine("Fur1设置具体信息后为:");
 fur1.ShowInfo( );
 fur1.SetPri(288); //重置家具价格
 Console.WriteLine("Fur1价格大优惠:");
 fur1.ShowInfo( );
 }
}
(0)

相关推荐

  • C# Struct的内存布局问题解答

    问题:请说出以下struct的实例大小以及内存布局 复制代码 代码如下: struct Struct1{    public byte a;    public short b;    public string c;    public int d;} struct Struct2{    public byte a;    public long b;    public byte c;    public string d;} struct Struct3{    byte a;    b

  • c#入门之类型转换详解

    "无论是什么类型,所有的数据都是一系列的位,即一系列0和1.变量的含义是通过解释这些数据的方式来传达的."--这句原话是书上翻译的,不过后一句话总感觉理解起来不是很通俗,自己觉得这样理解可能会合适些:无论什么类型的数据,在计算机存储时都是0和1,而变量的意义,就是以不同的方式来解释这些数据,以达到满足程序应用.节约内存等需求. 换句话说:变量存在的意义,就是建立规(标)范(准)的数据存储方式. 隐式转换 类型转换分两种形式:隐式转换.显示转换. 隐式转换不需要单独的表达式,只需要把满足

  • c#类的使用示例

    Notes: 数据private类型,大部分方法public类型: 如果有继承或者相互引用,注意数据的公有还是私有,保证数据的只读性质: C#不能够像C++一样在数据声明时调用构造函数,必须使用Myclass temp = new Myclass()来调用构造函数: C#不支持多重继承关系, 也就是说,一个派生类不允许有多个基类.简单点就是,父亲可能有好多儿子(父类可以派生出许多子类),但是一个孩子只能有一个爸爸(子类不允许多重继承关系): C#和其他面向对象一样,重载,多态,虚函数,抽象类这些

  • PHP调用C#开发的dll类库方法

    有的时候,我们需要在php中利用到其他语言编写的dll类库,如C#编写的dll,方法就是利用PHP new COM方法来调用,在调用之前先要把dll库注册并把程序集放入到全局缓存中. 1. 创建一个 C# Class Library ,命名为:HelloWorld 2. 打开项目的属性,在点选左边的 "Application"(就是第一个tab) , 然后点击Assembly Information 按钮 ,在弹出的Dialog中, 必须在底部勾上: Make assembly COM

  • C#类的创建与初始化实例解析

    本文以一个实例简单实现了类的创建与初始化,实现代码如下所示: using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace C_program_test { class Person { public string Name; //因为Name没有赋值,而它是string类型的,所以它的默认值就是Null public int Age; //因为Age和Gender也

  • C#中实现抽象类里建立静态方法

    本文简述了C#中实现抽象类里建立静态方法的解决办法,示例程序如下: public class TestMain { public static void main(String[] args) { AbstractTest.out(); } } 如上面所示的程序是可以运行的. 一般情况下抽象类中可以包含抽象方法和非抽象方法,静态类中只能包含静态成员,所有的静态成员也只能包含在静态类中. 因为静态static的本质是包含abstract和sealed的,所以静态方法可以包含在抽象类中,并通过抽象类

  • C#中struct和class的区别详解

    本文详细分析了C#中struct和class的区别,对于C#初学者来说是有必要加以了解并掌握的. 简单来说,struct是值类型,创建一个struct类型的实例被分配在栈上.class是引用类型,创建一个class类型实例被分配在托管堆上.但struct和class的区别远不止这么简单. 概括来讲,struct和class的不同体现在: ● 类是引用类型,struct是值类型 ● 在托管堆上创建类的实例,在栈上创建struct实例 ● 类实例的赋值,赋的是引用地址,struct实例的赋值,赋的是

  • 深入探讨C#中的结构struct

    一.结构和类的区别 1.结构的级别和类一致,写在命名空间下面,可以定义字段.属性.方法.构造方法也可以通过关键字new创建对象. 2.结构中的字段不能赋初始值. 3.无参数的构造函数无论如何C#编译器都会自动生成,所以不能为结构定义一个无参构造函数. 4.在构造函数中,必须给结构体的所有字段赋值. 5.在构造函数中,为属性赋值,不认为是对字段赋值,因为属性不一定是去操作字段. 6.结构是值类型,在传递结构变量的时候,会将结构对象里的每一个字段复制一份拷贝到新的结构变量的字段中. 7.不能定义自动

  • 深入C++中struct与class的区别分析

    一.C++中的struct对C中的struct进行了扩充,它已经不再只是一个包含不同数据类型的数据结构了,它已经获取了太多的功能.struct能包含成员函数吗?   能!struct能继承吗?  能!!struct能实现多态吗?   能!!! 最本质的一个区别就是默认的访问控制,体现在两个方面:1)默认的继承访问权限.struct是public的,class是private的.   写如下的代码: 复制代码 代码如下: struct A{  char a;}:struct B : A{  cha

  • Visual C#类的定义及实现方法实例解析

    本文实例演示了visual C#下一个类的定义及实现方法,虽然是一个较为基础的C#代码实例,对于新手来说仍然有很好的参考价值. 具体的实例代码如下: using System; public class Desk//基类Desk { protected int length;//保护成员 protected int width; protected int height; //类Desk的构造函数 public Desk( ) { length = 0; width = 0; height =

  • JS类的定义与使用方法深入探索

    本文实例分析了JS类的定义与使用方法.分享给大家供大家参考,具体如下: js可以定义自己的类 很有意思 <script type="text/javascript"> var Anim = function() { alert('nihao'); }; Anim.prototype.start = function() { alert('start'); }; Anim.prototype.stop = function() { alert('stop'); }; var

  • Python抽象基类的定义与使用方法

    目录 1.定义抽象基类的子类 2.标准库中的抽象基类 3.定义抽象基类 4.再看白鹅类型 前言: 我们写Python基本不需要自己创建抽象基类,而是通过鸭子类型来解决大部分问题.<流畅的Python>作者使用了15年Python,但只在项目中创建过一个抽象基类.我们更多时候是创建现有抽象基类的子类,或者使用现有的抽象基类注册.本文的意义在于,了解抽象基类的定义与使用,可以帮助我们理解抽象基类是如何实现的,为我们以后学习后端语言(比如Java.Golang)打下基础.毕竟抽象基类是编程语言通用设

  • Android 媒体开发之MediaPlayer状态机接口方法实例解析

    一. MediaPlayer 状态机 介绍 Android MediaPlayer 状态即图例 : 1. Idle (闲置) 状态 和 End (结束) 状态 MediaPlayer 对象声明周期 : 从 Idle 到 End 状态就是 MediaPlayer 整个生命周期; -- 生命周期开始 : 进入 Idle (闲置) 状态; -- 生命周期结束 : 进入 End (结束) 状态; Idle 和 End 状态转换 : -- 进入 Idle 状态 : MediaPlayer 刚被创建 new

  • spring中FactoryBean中的getObject()方法实例解析

    本文研究的主要是spring中FactoryBean中的getObject()方法的相关内容,具体如下. FactoryBean接口定义了以下3个接口方法: Object getObject():返回有FactoryBean创建的Bean实例,如果isSingleton()返回true,则该实例会放到Spring容器的单实例缓存池中. boolean isSingleton():确定由FactoryBean创建Bean的作用域是singleton还是prototype. Class getObj

  • jdbcTemplate使用方法实例解析

    这篇文章主要介绍了jdbcTemplate使用方法实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 Spring JDBC抽象框架core包提供了JDBC模板类,其中JdbcTemplate是core包的核心类,所以其他模板类都是基于它封装完成的,JDBC模板类是第一种工作模式. JdbcTemplate类通过模板设计模式帮助我们消除了冗长的代码,只做需要做的事情(即可变部分),并且帮我们做哪些固定部分,如连接的创建及关闭. 在appli

  • Java多线程回调方法实例解析

    所谓回调,就是客户程序C调用服务程序S中的某个方法A,然后S又在某个时候反过来调用C中的某个方法B,对于C来说,这个B便叫做回调方法. 下面看一个实际例子来理解: 本示例设置一个提问者,一个回答者,而回答者需要回答提问者一个很深奥的问题时,这时需要很多时间去查找,提问者又开始做其他的事情, 等回答者找到答案后,再把答案告诉提问者. 一.提问者的类 涉及到长时间的思考,要sleep,要继承Thread package com.xykj.thread; public class XiaoZhang

  • JFrame中添加和设置JPanel的方法实例解析

    Swing 程序用JFrame 对象实现了它们的窗口.JFrame 类是AWT Frame 类的一个子类.它还加入了一些Swing 所独有的特性.与 Frame 的使用十分相似.唯一的区别在于,你不能将组件加入到JFrame中.你可以或者将组件加入到JFrame 的content pane(内容面板) 中,或者提供一个新的content pane(内容面板). 面板与顶层容器的不同点:面板不能独立存在,必须被添加到其他容器内部(面板可以嵌套). JFrame 有一个 Content Pane,窗

  • Collections.shuffle()方法实例解析

    本文研究的主要是Collections.shuffle()方法的相关内容,下面看看具体内容. Java.util.Collections类下有一个静态的shuffle()方法,如下: 1)static void shuffle(List<?> list) 使用默认随机源对列表进行置换,所有置换发生的可能性都是大致相等的. 2)static void shuffle(List<?> list, Random rand) 使用指定的随机源对指定列表进行置换,所有置换发生的可能性都是大致

  • Java多线程状态及方法实例解析

    这篇文章主要介绍了Java多线程状态及方法实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 首先介绍线程的五种状态: 新生态:New Thread() 就绪态:准备抢CPU时间片 运行态:抢到了CPU时间片 阻塞态:放弃已经抢到的CPU时间片,且暂时不参与争抢 死亡态:Run运行完了之后 接下来介绍三种方法:线程的阻塞,线程的优先级设置,线程的礼让 public class MutliThreadDemo4 { public static

随机推荐