我们复习.Net的这些日子里
今天是我们复习前面学习的第三天,也是在今天我们结束了复习。之前上学时间感觉知识全是生僻的,在生活中很少用到,因此喜欢重复的记忆,而现在学习的知识全是现在乃至未来,将是每天我们使用的,所以就感觉没必要重复记忆啦,只要我记得知识点的存在然后会想起来具体的内容的,可是今天的复习我发现这样的做法还是不对的,也可能只是刚开始啦,太多东西都是硬性的,因此我想通过这篇文章来重新捡起来我忘记的,嘿嘿。下面就来说下具体容易忘记的和做起来题还是比较生硬的吧。
一.构造函数
构造函数方法名和类名一样,没有返回值,连void都不用。构造函数可以有参数,new对象的时候传递函数参数即可,如果不指定构造函数,则类有一个默认的无参构造函数。如果指定了构造函数,则不再有默认的无参构造函数,如果需要无参构造函数,则需要自己来写。构造函数可以重载,也就是有多个参数不同的构造函数。我在学习的过程中知道怎么来写构造函数,但是却忘记啦有“base”这个关键字可以继承传参,只是记得在输出时间可以使用,因此现在来总结下啦,嘿嘿,下面写一道题来加深我的记忆啦。
定义父亲类Father(姓lastName,财产property,血型bloodType),儿子Son类(玩游戏PlayGame方法),女儿Daughter类(跳舞Dance方法),调用父类构造函数(:base())给子类字段赋值。
//定义父亲类Father(姓lastName,财产property,血型bloodType),
class Father
{
public Father(string l, double p, string b)
{
this.lastname = l;
this.property = p;
this.bloodtype = b;
}
string lastname; public string Lastname
{
get { return lastname; }
set { lastname = value; }
}
double property; public double Property
{
get { return property; }
set { property = value; }
}
string bloodtype; public string Bloodtype
{
get { return bloodtype; }
set { bloodtype = value; }
}
}
//女儿Daughter类(跳舞Dance方法),
class Daughter:Father
{
public Daughter(string l, double p, string b):base(l,p,b)
{
}
public void Dance()
{
Console.WriteLine("我的名字是{0},我的血液是{1},有{2}财产,而且我会跳舞",base.Lastname,base.Bloodtype,base.Property);
}
}
//儿子Son类(玩游戏PlayGame方法),
class Son:Father
{
public Son(string l, double p, string b):base(l,p,b)
{
}
public void PlayGame()
{
Console.WriteLine("我的名字是{0},有{1}财产,我的血液是{2},而且我会玩游戏\n", base.Lastname, base.Property, base.Bloodtype);
}
}
class Program
{
//调用父类构造函数(:base())给子类字段赋值
static void Main(string[] args)
{
Son s = new Son("大大", , "A");
s.PlayGame();
Daughter d = new Daughter("笑笑",,"B");
d.Dance();
Console.ReadKey();
}
}
在这个题中有一个父类Father,他有三个属性已经用一个构造函数的形式传参,而在儿子和女儿中也存在这几个属性啊,可以继承啦,但是此时可以用base在构造函数中直接传参,非常方便啦,这个小知识点做题时间我给忽略啦,而且那时间看题时间,还以为就只是在儿子女儿各自的方法输出的时间使用关键字的,嘿嘿。
二.虚方法和抽象方法
五.字符串的处理
对待字符串的处理使用起来还是还是会做题的,但是好多都是使用微软提供给我的方法,而我不是不会调用方法,而是在字符串字符的类型转换上面总是不知道用哪个类型更好,或者应该转换为那个类型,下面就简单的举例说一下啦.
static void Main(string[] args)
{
#region MyRegion
string num = "I love you";
string array = num.Substring(, ).ToLower();
string array1 = num.Substring(, );
string array2 = num.Substring();
var arr = array.ToCharArray().Reverse();
var arr1 = array1.ToCharArray().Reverse();
var arr2 = array2.ToCharArray().Reverse();
foreach (var item in arr)
{
Console.Write("{0}", item);
}
foreach (var item1 in arr1)
{
Console.Write("{0}", item1);
}
foreach (var item2 in arr2)
{
Console.Write("{0}", item2);
}
Console.ReadKey();
像上面这样的题一样,每次做起来这个类型的题,总是不知道该怎么改变其类型啦,其实这个就是昨天做的这个题,在做这个题时间浪费啦好久的时间啊,这个在前面的那几个类型转换上面纠结啊,直到今天才想起来啦我们经常会想到的var关键字,换成了它,感觉简单啦好多,不用再纠结类型转换该使用哪个好啦,也知道在做题时间会用提示需要使用什么类型,但是在这个方面就是没有很好地掌握啦。
六.集合
我们复习.Net的这些日子里的更多相关文章
- 在没有DOM操作的日子里,我是怎么熬过来的(上)
前言 在我动笔写这篇文章的时候,我刚刚从我的项目中删除了最后一行JQuery代码.至于我为何要这么做,请听闰土娓娓道来.前几年我还在想,假如有一天,前端世界里不能再直接操作dom了,我该怎么办?没想到 ...
- 在没有DOM操作的日子里,我是怎么熬过来的(终结篇)
前言 在我写终结篇的日子里,Vue版本稳定在2.9.1.当我摸清Vue的脉络之后,以一个爬坑无数的亲历者的身份,谈谈我在MVVM时代里遇到的那些事儿. 接下来,正文从这开始~ 好多童鞋学习Vue都有灯 ...
- 运维MES的日子里
可以看下<工业软件国内与国外差距,越来越小还是越来越大>.<MES技术国内现状与未来发展趋势>及<国际主要MES厂商>,总结来说中国工业是进步的,工业软件也是进步的 ...
- 在没有DOM操作的日子里,我是怎么熬过来的(中)
前言 继上篇推送之后,在掘金.segmentfault.简书.博客园等平台上迅速收到了不俗的反馈,大部分网友都留言说感同身受,还有不少网友追问中篇何时更新.于是,闰土顺应呼声,在这个凛冽的寒冬早晨,将 ...
- 与linux相处的日子里
在前几天装了一下linux操作系统,并安装了几个经常使用的工具.如今就谈谈我的感受吧! 对一个连linux几个字母都不会拼写的人来说.让我參与这个工作可谓是:"太残忍啦!"当然这在 ...
- DTD复习笔记(复习资料为菜鸟教程里的DTD教程)
DTD(文档类型定义)的作用是定义 XML 文档的合法构建模块. DTD 可被成行地声明于 XML 文档中,也可作为一个外部引用. 为什么使用 DTD? 通过 DTD,您的每一个 XML 文件均可携带 ...
- XML复习笔记(复习资料为菜鸟教程里的XML教程)
XML 指可扩展标记语言(eXtensible Markup Language) XML 的设计宗旨是传输数据,而不是显示数据. XML 标签没有被预定义.您需要自行定义标签. XML 被设计为具有自 ...
- javase基础复习攻略《十》
按照计划本篇为大家总结JAVA的网络编程,什么叫网络编程呢?网络编程!=网站编程,对于这一点大家一定要注意,很多小朋友都曾经这么认为.既然谈到网络编程,咱们先了解一下网络的基础知识,什么是计算机网络? ...
- 【C#复习总结】垃圾回收机制(GC)1
摘要:今天我们漫谈C#中的垃圾回收机制,本文将从垃圾回收机制的原理讲起,希望对大家有所帮助. GC的前世与今生 虽然本文是以.NET作为目标来讲述GC,但是GC的概念并非才诞生不久.早在1958年,由 ...
随机推荐
- ld,连接器
连接器的功能,是将一个可执行程序所需的目标文件和库文件最终整合为一体.一个程序通常包含传统的三个段,.test, .data, .bss段.连接器的功能就是将各个目标文件个库文件中的三个段进行合并. ...
- 【WPF】使用Popup控件做浮窗/提示框
需求:当鼠标移入某个区域时,弹出一个浮窗,以便用户进行下一步操作. 效果如下图: 当鼠标移入左上角的[多选显示]框内,出现下面的浮窗(悬浮在原UI之上).当在浮窗外点击鼠标左键时,隐藏该浮窗. 由于该 ...
- JAVA String.format 方法使用介绍<转>
在JDK1.5中,String类增加了一个非常有用的静态函数format(String format, Objece... argues),可以将各类数据格式化为字符串并输出.其中format参数 ...
- 分享一下自己写的Python 3的各种PDF文档【花了半年时间那】
这些文档花了我半年的时间去整理.因为是第一次进行整理,希望帮助后来者少走弯路.毕竟是第一次整理.哪些地方不到位,希望大家和我练习,我们一起把它做好,以下就直接给出下载地址了,都是免积分的下载奥.因此. ...
- LintCode - Copy List with Random Pointer
LintCode - Copy List with Random Pointer LintCode - Copy List with Random Pointer Web Link Descripti ...
- iOS边练边学--UIScrollView的属性简单使用,代理的简单介绍以及内容缩放
一.什么是UIScrollView *移动设备的屏幕大小是极其有限的,因此直接展示在用户眼前的内容也是相当有限 *当展示的内容较多,超出一个屏幕时,用户可通过滚动收拾来查看屏幕以外的内容 *普通的UI ...
- DataGridView使用技巧八:设置单元格的ToolTip
ToolTip属性用来设置当鼠标移动到单元格上面时的提示内容. DataGridView.ShowCellToolTips=True的情况下,单元格的ToolTip可以表示出来.对于单元格窄小,无法完 ...
- 判断list为空的条件
if(list!=null&&!list.isEmpty()){ hql.append(" and (status = ? or sta ...
- r语言 包说明
[在实际工作中,每个数据科学项目各不相同,但基本都遵循一定的通用流程.具体如下] [下面列出每个步骤最有用的一些R包] 1.数据导入以下R包主要用于数据导入和保存数据:feather:一种快速,轻 ...
- 从jQuery谈库与框架的设计之优劣
jQuery是业内知名的javascript框架,它的实现和设计可以说代表了javascript界最高的水平,本文试从四个方面来以jQuery为例总结库与框架设计的原则和优劣判断. 解决问题 首先请看 ...