[学习资料] <C#图解教程>(第4~7章):https://www.cnblogs.com/moonache/p/7687551.html 电子书下载:https://pan.baidu.com/s/1mhOmBG0 [内容] 所有类的基类 类的组成 类的实例化.内存分配 类的特性:封装.继承.多态 接口 扩展知识 隐藏基类的成员 struct.class 抽象函数(abstract).虚函数(virtual) 抽象类(abstract).接口(interface) [笔记] 所有类的基类:…
继承 extends 子类的共性代码都是继承自父类的,每个子类只要写自己特有的代码 class 子类 extends 父类 继承提高了代码的复用性,提供了多态的前提,但是不要为了某个功能去继承 子类不是父类的子集,而是对父类的扩展 规则:子类不能直接访问父类中private的成员变量和方法 只支持单继承,不能多重继承,可以多层继承.子类只能有一个父类 方法的重写override 子类重写父类的方法,只是重新编写方法体代码,如果父类的方法是public ,子类重写时就不能使用缺省以下的修饰符 al…
常见面试题:创建一个线程的常用方法有哪些?Thread创建线程和Runnable创建线程有什么区别? 答案通常集中在,继承类和实现接口的差别上面: 如果深入问一些问题:1.要执行的任务写在run()方法中,为什么要用start()方法启动?等等问题 简单的问题还是可以回答一哈子,但是涉及到深入些的问题,就只能看看源码,才能更好的回答问题了: 1.为啥线程要用start()方法启动? 首先要从Thread类的源码入手: Thread类实现了Runnable接口 public class Threa…
1.new关键字做的4个事情 1.1 开辟堆空间 a.开辟多大的空间呢? 当前类 所有的 成员变量类型所占空间的总和 + 类型指针(方法表的地址) b.开辟了空间干什么用呢? 存放 成员变量 1.2 创建对象 a.将对应类型 中的 实例成员模板区 里的 实例变量 复制到 堆空间空间中: b.将 对应类型 的 方法表地址 设置 对象! 1.3 调用构造函数 a.将 前面创建 的对象 的堆地址,先传给 构造函数里的 this! b.再 执行 构造函数里的代码! 1.4 返回堆地址 2.静态成员 和…
类中属性的隐式初始化,代码如下,我们看下不同类型默认的初始值是什么 创建一个Demo类如下: class Demo { int a; byte b; short c; long d; boolean e; char f; float g; double h; Demo demo; } 可以看到初始化的值如下: 在类的内部,变量定义的先后顺序决定了初始化的顺序.即使变量定义散布于方法定义之间.它们仍然会在任何方法(包括构造器)被调用之前得到初始化. 我们看如下代码: public class Te…
1. start() 和 run()的区别说明 start()方法: 它会启动一个新线程,并将其添加到线程池中,待其获得CPU资源时会执行run()方法,start()不能被重复调用. run()方法:它和普通的方法调用一样,不会启动新线程.只有等到该方法执行完毕,其它线程才能获得CPU资源. start() 和 run()的区别示例 // Demo.java 的源码 class MyThread extends Thread{ public MyThread(String name) { su…
Interface 接口 类似 抽象类,也不能被实例化...(前面说的静态类,加上抽象类,还有这个,都3个了)接口其实比 抽象类 更加抽象.接口的方法(这个方法还不能有实体代码,和抽象类的抽象方法差不多)接口也支持属性Properties Indexers 和events(还记得属性吗?前面的支持 get 和 set 方法的一个东东)由于C#不支持多继承,当一个类的:后面接了多个name,这些name其实都是接口看图 ,首先建造一个 纯Dog的list,添加3条狗,然后对狗狗进行名字排序后输出D…
由于类的内容比较多,分为类-初级基础篇和类-进阶篇 类的内容总览图: 本节主要讲基础和面向对象的特性 本节内容一览图: 前言总结介绍: 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 的使用 类 是一个模板,模板中包装了多个“函数”供使用(可以讲多函数中公用的变量封装到对象中) 对象,根据模板创建的实例(即:对象),实例用于调用被包装在类中的函数,对象是一个类的实例 实例(instance):一个对象的实例化实现. 标识(identity):每个对象的实例都需要一个可以唯一标识这…
---------------------------------------- 入口类main.cpp 主要控制类AppDelegate.cpp ---------------------------------------- 对象类CCObject 节点类CCNode ---------------------------------------- 导演类CCDirector 场景类CCScene 图层类CCLayer 精灵类CCSprite ------------------------…
Hibernate.基础篇<一>.Hibernate工具类. 话述: Hibernate.基础篇第一篇,前面是代码.后面再加理论&实践. Hibernate使用的版本是:5.x,在<Hibernate.基础篇<一>.Hibernate工具类.>已有具体描述,并实现了创建SessionFactory的方式,本篇对Hibernate工具类进行了小小的改良,如下: 项目结构: RunTest.java package com.charles.hibernate.tes…