C#总复习

1.new关键字

Person zsPerson=new Person();

A、new帮助我们做了3件事儿:

1)、在内存中开辟一块空间。2)、在开辟的空间中创建对象。3)、调用对象的构造函数进行初始化对象

B、隐藏从父类那里继承过来的成员

2.访问修饰符

public:公开的公共的,在哪都能访问。

private:私有的,只能在当前类的内部进行访问,出了这个类就访问不到了。

protected:可以在当前类的内部以及该类的子类中访问。

internal:在当前项目中都可以访问

protected internal:

能够修饰类的访问修饰符只有两个:public和internal

子类的访问权限不能高于父类

3.常用的关键字

this:a.当前类的对象,b.调用自己的构造函数

base:调用父类的成员

new:a.创建对象,b.隐藏父类的成员

virtual:标记一个方法是虚方法

abstract:抽象,抽象成员必须包含在抽象类中,但是抽象类中并不一定都是抽象成员。

static:静态,静态类中一定都是静态成员,而静态成员并不一定都要在静态类中

override:重写

interface:接口

partial:部分类

sealed:密封类,不允许被继承

return:a.在方法中返回值,b.立即结束本次方法

break:跳出当前循环

continue:结束本次循环,回到当前条件,进行判断

struct:结构

enum:枚举

const:常量

3、关于虚方法需要注意的几点:

1).父类中如果有方法需要让子类重写,则可以将该方法标记为virtual

2).虚方法在父类中必须有实现,哪怕是空实现。

3).虚方法子类可以重写(override),也可以不重写

4、关于抽象方法注意的几点:

1).需要用abstract关键字标记

2).抽象方法不能有任何方法实现。

3).抽象成员必须包含在抽象类中。

4).由于抽象成员没有任何实现,所以子类必须将抽象成员重写。

5).抽象类不能实例化, 抽象类的作用:抽象类的作用就是为了让子类继承。

6).抽象类中可以包括抽象成员,可以包括有具体代码的成员。

7). 还有抽象方法不能用static修饰

5、接口

1).接口中只能包含方法(属性、事件、索引器也都是方法)

2).接口中的成员都不能有任何实现。光说不做

3).接口不能被实例化。

4).接口中的成员不能有任何访问修饰符。(默认为public)

5).实现接口的子类必须将接口中的所有成员全都实现。

6).子类实现接口的方法时,不需要任何关键字,直接实现即可。

7).接口存在的意义就是为了多态。

6、静态与非静态的区别(static)

a.静态类里面必须是静态方法,静态方法里面必须是静态成员。非静态类里面可以有实例方法,非静态方法里面可以有实例成员。

b.静态方法需要用类名调用,非静态方法需要用对象调用。

7、结构和类的区别:

a.从类型上看:结构---值类型(栈)      类---引用类型(堆)

b.从声明的语法上看:结构---struct      类---class

c.在类中,构造函数里,既可以给字段赋值,也可以给属性赋值,构造函数是可以重载的。

但是,在结构的构造函数当中,必须只能给字段赋值,而且需要给全部的字段赋值,而不能选择性的给字段赋值。

结构和类的构造函数:

相同点:本身都会有一个默认的无参数的构造函数

不同点:当你在类中写了一个新的构造函数之后,那个默认无参数的构造函数就没有了。

但是,在结构中写了一个新的构造函数之后,那个默认无参数的构造函数依然在

如果我们只是单纯的存储数据的话,我们推荐使用结构,结构并不具备面向对象的特征(封装,继承,多态)

时间: 2024-07-30 10:11:44

C#总复习的相关文章

EF6 在原有数据库中使用 CodeFirst 总复习(五、生成发帖页面)

有点与在原有数据库中使用 CodeFirst 远了,不过是总复习吗,总得全面点. 一.在用户表(Users)中插入两个用户 二.生成发帖界面 MVC生成的界面很多,也没使用Ajax,实际开发中很少会使用,这里只是为了演示. 但无论用什么生成,特性.实体对象等都是要用到的. 生成之前要编译一下. 三.先试试看能不能运行 空空如也 应该显示用户名,显示成登陆名了(其实预想的是不在新增和修改时显示,未考虑到列表),删除标记怎么也显示出来了,还有内容,能显示的下吗... 四.列显示问题 让列表显示用户,

[家里蹲大学数学杂志]第240期钟玉泉编复变函数总复习纲要

第240期_钟玉泉编复变函数总复习纲要 下载后请自行打印.预览或学习, 不要到处传播于网络, 更不要用于商业用途.

2016年初中数学知识点中考总复习总结归纳

2016年初中数学知识点中考总复习总结归纳 http://wenku.baidu.com/link?url=NbEiI_Ld2TO3zEH8d5oDxTux2IBWJ5HqNmZ467MGchJTV2G0pyG4_TauOsYhjL6Ybyqp8MxUKM_wtofUqMTc7ePR3gJv3zIY27sTuSGOaRW

实验十八 总复习

实验十八  总复习 实验时间 2018-12-30 1.实验目的与要求 (1) 综合掌握java基本程序结构: (2) 综合掌握java面向对象程序设计特点: (3) 综合掌握java GUI 程序设计结构: (4) 综合掌握java多线程编程模型: (5) 综合编程练习. 2.实验内容和步骤 任务1:填写课程课后调查问卷,网址:https://www.wjx.cn/jq/33108969.aspx. 任务2:综合编程练习 练习1:设计一个用户信息采集程序,要求如下: (1)  用户信息输入界面

P2 总复习

目录 0531总复习 数据类型内置方法 整形类型内置方法 浮点型类型内置方法 字符串类型内置方法 优先掌握 需要掌握 了解 列表类型内置方法 优先掌握 需要掌握 元组类型内置方法 优先掌握 字典类型内置方法 优先掌握 需要掌握 集合类型内置方法 优先掌握 需要掌握 数据类型总结 可变or不可变 有序or无需 存一个值or多个值 拷贝 浅拷贝 深拷贝 字符编码 Python3解释器编码 文件操作 打开文件的流程 with管理上下文 打卡文件的三种模式 同时打开两个文件 文件复制 打开文件file后

0505.Net基础班第二十一天(基础加强总复习)

1.取消播放器的自动播放功能 2.播放或者暂停按钮 3.下一曲.上一曲 4.多选删除 5.静音和放音 6.选择列表中的音乐文件,单击播放按钮直接播放 7.自动进行下一曲 15秒  44秒 当我和世界不一样 44.--47 那就让我不一样 lblInfomation.Text = musicPlayer.currentMedia.duration.ToString() + "\r\n" + musicPlayer.currentMedia.durationString + "\

Java面向对象总复习-QuickHit

1.创建玩家级别类Level.java 1 package com.bdqn; 2 /** 3 * 1.玩家级别类 4 * @author pc 5 * 6 */ 7 public class Level { 8 /** 9 * 级别号 10 */ 11 private int levelNo; 12 /** 13 * 各级别一次输出字符串的长度 14 */ 15 private int strLength; 16 /** 17 * 各级别输出字符串的次数 18 */ 19 private in

0505.Net基础班第二十天(基础加强总复习)

1.new关键字 1).创建对象 2).隐藏从父类那里继承过来的成员 2.访问修饰符 public:公开的,公共的 private:私有的,只能在当前类的内部访问,类中成员们,如果不加访问修饰符,默认就是private procteced:受保护的,可以在当前类的内部访问,也可以在该类的子类中访问 internal:在当前项目中都可以访问. protected internal: 能够修饰类的访问修饰符只有两个,internal和public 3.常用的关键字 this 1.当前类的对象 2.调

EF6 在原有数据库中使用 CodeFirst 总复习(一、搭建基础环境)

本来以为已经会了,可动手时发现许多问题还是模糊不清,正所谓眼高手低.只能重新查资料,再复习一遍. vs.net2013 ef6 mvc5 sqlserver2008 一.建立数据库  Blogging 二.创建表,插入测试数据 CREATE TABLE [dbo].[Blogs] (     [BlogId] INT IDENTITY (1, 1) NOT NULL,     [Name] NVARCHAR (200) NULL,     [Url] NVARCHAR (200) NULL,  

.net基础总复习(1)

第一天 1.new关键字 (1) 创建对象 (2) 隐藏从父类那里继承过来的成员 2.访问修饰符 public: 公开的,公共的. private:私有的,只能在当前类的内部访问,类中的成员, 如果不加访问修饰符,默认就是private. protected:受保护的,可以在当前类的内部访问,也可以在该类的子类中访问. internal: 在当前项目中都可以访问, internal于public的区别就是一个限制在项目里,另一个不是. protected internal:能够修饰类的访问修饰符