this关键字指向类的当前实例,this指针是类中所有非静态方法的隐藏指针,每个方法都能通过this指针指向对象的其他方法和成员变量. 因为对一个类来说,它的成员函数(方法)只有一份,所有的实例对象共享这一份代码,但是他们在内存中都有各自的成员变量.那么程序跑起来的时候,就是通过这个this指针来确定代码去操作哪个实例对象的数据字段. 但是静态的成员方法是没有隐藏的this指针的,所以静态的成员方法是不能访问非静态的数据成员和非静态的成员函数的. 同时C#中不允许通过实例对象访问静态方法或者静态…
ref 关键字通过引用(而非值)传递参数. 通过引用传递的效果是,对所调用方法中的参数进行的任何更改都反映在调用方法中. 说明: 不要混淆通过引用传递的概念与引用类型的概念. 这两种概念是不同的. 无论方法参数是值类型还是引用类型,均可由 ref 修改. 当通过引用传递时,不会对值类型装箱. 若要使用 ref 参数,方法定义和调用方法均必须显式使用 ref 关键字,如下面的示例所示. class RefExample { static void Method(ref int i) { // Re…
只读字段 当字段声明中含有 readonly 修饰符时,该声明所引入的字段为只读字段.给只读字段的直接赋值只能作为声明的组成部分出现,或在同一类中的实例构造函数或静态构造函数中出现.(在这些上下文中,只读字段可以被多次赋值.)准确地说,只在下列上下文中允许对 readonly 字段进行直接赋值: 在用于引入该字段的变量声明符中(通过添加一个变量初始值设定项). 对于实例字段,在包含字段声明的类的实例构造函数中:对于静态字段,在包含字段声明的类的静态构造函数中.也只有在这些上下文中,将 reado…
The original link: http://zeroturnaround.com/rebellabs/reloading-objects-classes-classloaders/ A Bird's Eye View 鸟瞰 The first thing to understand when talking about reloading Java code is the relation between classes and objects. All Java code is ass…
Before understanding metaclasses, you need to master classes in Python. And Python has a very peculiar idea of what classes are, borrowed from the Smalltalk language. 在理解元类之前,你先要掌握Python的类.Python中的类是借鉴了小众语言的特殊的类. In most languages, classes are just p…
http://www.javaworld.com/article/2979739/learn-java/java-101-classes-and-objects-in-java.html?page=3 class Book { // ... static int count; } This example declares a count integer field that stores the number of Book objects created. The declaration b…
15.1 User-defined typesWe have used many of Python’s built-in types; now we are going to define a new type. As an example, we will create a type called Point that represents a point in two-dimensional space.In mathematical notation, points are often…
类内部可以有另一个类,也就是内部类,如果带static则为静态内部类静态内部类当然不能直接访问实例变量内部类修饰符可以有四种,而外部类只有两种 内部类的意义:这个内部类只适用于这个外部类因为外部类的某些字段是private的,这个内部类要想访问除非是他的成员生成的class文件也会在一起的,便于整理 内部类作为类的成员,当然也要有外部类的对象才能访问静态内部类的使用,相当于包名 OuterClass.StaticNestedClass nestedObject = new OuterClass.…
类的定义:修饰符,class,类名,extends,逗号分隔的implements,类体{}规范的类名:首字母要大写,以后每个单词首字母都大写字段的定义:修饰符,类型,字段名按照封装的思想,字段通常定义为private,然后提供public方法来访问和修改他们方法的定义:修饰符,返回类型,方法名,(参数列表,逗号分隔,或为空),异常声明throws,方法体{}方法的signature(签名)包括方法名称,参数数量,类型,顺序所以只是返回类型不同的两个方法是通不过编译的规范的方法名:首单词为动词,…
most from reference 类 Kotlin的类的声明使用关键字class class Invoice { } 类声明由类名.类头(指定其类型参数,构造函数等)和类体组成,由大括号括起来.如果一个类没有方法体,可以省略花括号. class Empty 构造函数 Kotlin中类可以有一个主要的构造函数和一个或多个辅助构造函数.主构造函数是类头的一部分:它在类名后面(可选的类型参数) class Person constructor(firstName: String) { } 如果主…