我们都知道,静态static方法中不能调用非静态non-static方法,准确地说是不能直接调用non-static方法。但是可以通过将一个对象的引用传入static方法中,再去调用该对象的non-static方法。 其实这个事实的应用很经常,以至于我们不去重视:在主函数(static方法...
分类:
编程语言 时间:
2015-12-03 11:25:03
阅读次数:
149
C#静态方法与非静态方法的区别不仅仅是概念上的,那么他们有什么具体的区别呢?让我们通过本文向你做一下解析。C#的类中可以包含两种方法:C#静态方法与非静态方法。那么他们的定义有什么不同呢?他们在使用上会有什么不同呢?让我们来看看最直观的差别:使用了static 修饰符的方法为静态方法,反之则是非静态...
今天看了到有意思的题:在静态方法上加锁 和 非静态方法加锁 有什么区别,从而再次引出锁机制的一些理解。先看方法:// 这是一个很简单的类,里面共享静态变量 num,然后一个静态 和 非静态方法,都加上锁// 我们假设有两个线程同时操作这两个方法,那么数据能互斥吗?Java代码publicclassW...
分类:
其他好文 时间:
2015-11-24 00:58:54
阅读次数:
484
1.在静态方法中不可以使用this关键字2.在静态方法中不可以直接调用非静态方法如果在执行类,希望先执行类的初始化动作,可以使用static定义一个静态区域。如:1 class example{2 static{3 //some4 }5 }主方法的形参为数组,其中ar...
分类:
其他好文 时间:
2015-11-05 23:56:53
阅读次数:
342
8.2 OOP技术 下面讨论对象的其他一些特性,包括: 接口 继承 多态性 对象之间的关系 运算符重载 事件 引用类型和值类型8.2.1 接口 接口是把公共实例(非静态)方法和属性组合起来,以封装特定功能的一个集合。 一且定义了接口,就可...
关于静态方法、变量和非静态方法、变量的区别,园里的大神早就有了许多详细的总结,个人觉得静态方法、变量与非静态方法、变量的区别可以总结为以下两句话:静态的是属于类的非静态是属于对象的就是说调用静态方法和变量时可以直接使用ClassName.StaticMethod();调用非静态方法和变量只能先创建一...
this: Java关键字this只能用于方法方法体内。当一个对象创建后,Java虚拟机(JVM)就会给这个对象分配一个引用自身的指针,这个指针的名字就是this。因此,this只能在类中的非静态方法中使用,静态方法和静态的代码块中绝对不能出现this,这在“Java关键字static、final....
分类:
编程语言 时间:
2015-10-26 16:47:20
阅读次数:
180
在java中不能将方法体内的局部变量声明为static的。例如下诉代码就是错误的。public class example{ public void method(){ static int i = 0; }}在静态方法中不可以使用this关键字在静态方法中不可以直接调用非静态方法,但非静...
分类:
其他好文 时间:
2015-10-17 14:50:50
阅读次数:
97
可以将一个类的定义放在另一个类的内部,这就是内部类。1.可以实现隐藏2.内部类了解外围类,并能与之通信,很多时候可以写出更加优雅和清晰的代码10.1创建内部类public class Outer{ class Inner{ }}如果想从外部类的"非静态方法之外"的任意位置创建某个内部类对象,那么.....
分类:
编程语言 时间:
2015-09-17 19:25:33
阅读次数:
209
顾名思义是用于同步互斥的作用的。 这里精简的记一下它的使用方法以及意义: 1. 当synchronized修饰 this或者非静态方法或者是一个实例的时候,所同步的锁是加在this或者实例对象引用上面的。比如a,b同为Main类的...
分类:
编程语言 时间:
2015-09-16 16:15:36
阅读次数:
179