- 浏览: 381605 次
文章分类
最新评论
-
小尜:
写的很详细,也很简单,一看就懂。多谢啦。
关于工厂模式和spring的IOC -
fjjiaboming:
代码排版!!!!!
JDBC事务和JTA (XA)事务 -
fjjiaboming:
排版有问题吗? 望交流.
做人有三个层次 -
fjjiaboming:
看来数据库连接池 必须用JNDI 注册在容器 , 对吗?
JDBC事务和JTA (XA)事务 -
fd1803:
SSL工作原理:http://www.wosign.com/B ...
SSL(Server Socket Layer)简介
首先我们提供两个类,基类为Parent,派生类为Child。在Parent中我们提供两个方法,一个是静态方法staticMethod(),一个是非静态方法nonStaticMethod()。在Child类中我们覆盖着两个方法。
- class Parent{
- public void nonStaticMethod() {
- System.out.println("Parent's Non-Static Method is Called");
- }
- public static void staticMethod() {
- System.out.println("parent's static method is called");
- }
- }
- class Child extends Parent{
- public void nonStaticMethod() {
- System.out.println("child's non-static method is called");
- }
- public static void staticMethod() {
- System.out.println("child's static method is called");
- }
- }
在Test类中我们分别使用Parent p1 = new Parent(),Parent p2 = new Child(),Child c = new Child() 得到三个实例,并分别调用静态方法和非静态方法,我们来看程序的运行结果 在Test类中我们分别使用Parent p1 = new Parent(),Parent p2 = new Child(),Child c = new Child()得到三个实例,并分别调用静态方法和非静态方法,我们来看程序的运行结果
- public class Test{
- public static void main(String args[]) {
- Parent p1 = new Parent();
- Parent p2 = new Child();
- Child c = new Child();
- System.out.print("Parent.static: ");
- Parent.staticMethod();
- System.out.print("p1.static: ");
- p1.staticMethod();
- System.out.print("p2.static: ");
- p2.staticMethod();
- System.out.print("p1.nonStatic: ");
- p1.nonStaticMethod();
- System.out.print("p2.nonStatic: ");
- p2.nonStaticMethod();
- System.out.print("Child.static: ");
- Child.staticMethod();
- System.out.print("c.static: ");
- c.staticMethod();
- System.out.print("c.nonStatic: ");
- c.nonStaticMethod();
- }
- }
程序的运行结果为:
Parent.static: parent's static method is called
p1.static: parent's static method is called
p2.static: parent's static method is called
p1.nonStatic: Parent's Non-Static Method is Calle
p2.nonStatic: child's non-static method is called
Child.static: child's static method is called
c.static: child's static method is called
c.nonStatic: child's non-static method is called
值得注意的是p2实际上是一个Child的类型的引用,然而在调用静态方法的时候,它执行的却是父类的静态方法,而不是Child的静态方法,而调用 p2的非静态方法的时候执行的是Child 的非静态方法,为什么呢?原因是静态方法是在编译的时候把静态方法和类的引用类型进行匹配,而不是在运行的时候和类引用进行匹配。因此我们得出结论:当我们在子类中创建的静态方法,它并不会覆盖父类中相同名字的静态方法。
Test类中我们分别使用Parent p1 = new Parent(),Parent p2 = new Child(),Child c = new Child() 得到三个实例,并分别调用静态方法和非静态方法,我们来看程序的运行结果 在Test类中我们分别使用Parent p1 = new Parent(),Parent p2 = new Child(),Child c = new Child()得到三个实例,并分别调用静态方法和非静态方法,我们来看程序的运行结果评论
</quote>
这样的结论是有点不正解吧.
1、Parent p2 = new Child();
2、Child c = new Child();
方式1涉及塑型,而静态方法是属于类的,也就是在类初始化就分配了。
方式2是实例化类,实例化后,不管是静态方法,还是非静态方法。当然就是对象的了。
发表评论
-
[软件人生]什么是程序员
2008-09-06 19:18 1075一个大专学历想做程序员的朋友和我的对话,很短,我觉得,至少能说 ... -
软件公司怎么消亡的?
2008-09-03 23:45 995最近读了一篇非常有趣的文章,原文是英文,和大家共享,其大概意思 ... -
世上没有B/S系统,只有B系统和S系统. (转载)
2007-10-28 23:02 1113世上没有B/S系统,只有B ... -
从原则出发的软件开发(转载)
2007-06-24 18:57 1161原文:http://gocom.primeton.co ... -
关于java 的methode的内存区域问题
2007-06-12 14:49 1352用java这么长时间了,对于static method 大家都 ... -
关于继承初始化的精典试题 (转载)
2007-06-07 15:50 1189一、 class First { void tt() { ... -
关于synchronized
2007-05-30 21:17 1095synchronized 关键字,它 ... -
关于Connection的问题
2007-05-29 09:48 1125最近在看Datasource时候想到,datasource是数 ... -
0碎的知识
2007-05-26 15:57 10651.软件设计模式针对的是代码片段的复用,而SOA实施中讨论的是 ... -
关于工厂模式和spring的IOC
2007-05-23 18:35 7927原文转之: http://gocom.primeton.com ... -
appfuse中/mainMenu.html的定向问题
2007-05-08 22:26 1520找了半天,终于找到了 : http://blog.matr ... -
JSTL介绍
2007-05-02 14:07 2833使用JSTL改进JSP来简化网 ... -
Robbin推荐的java类书籍
2007-04-30 20:54 1256http://www.iteye.com/article/52 ... -
候捷谈Java反射机制
2007-04-08 14:19 1177Java反射机制<o:p></o:p> ... -
JDBC事务和JTA (XA)事务
2007-04-03 21:10 21825事务简介 一般情况下,J2EE应用服务器支持JDBC事务、 ... -
inline函数的用法小议(转载)
2007-03-14 15:22 8461inline函数的用法小议( ... -
关于java的JIT知识
2007-03-14 13:42 15890刚看Practical java ,对jit ... -
当前Java软件开发中几种认识误区
2007-03-12 21:07 1234当前Java软件开发中几种 ... -
在websphere上安装动态高速缓存监控器
2007-02-07 20:49 3515动态高速缓存的安装和配置 这一节探讨如何安装和配置动态高速缓存 ... -
SSL(Server Socket Layer)简介
2007-02-07 19:52 2090SSL(Server Socket Layer)简介 在网络 ...
相关推荐
differ.java 测试静态方法与实例方法之间的区别 forefather.java 一个简单的基类 grandson.java 上面这个类的子类 hasConstructor.java 拥有构造器的类 hasFinalFun.java 拥有最终方法的类 hasRecall.java ...
静态变量和静态方法的意义,如何引用一个类的静态变量或者静态方法? 50.JAVA语言如何进行异常处理,关键字:thorws,throw,try,catch,finally 51.Object类(或者其子类)的finalize()方法在什么情况下被调用? 52....
3.4 小结:基本数据类型—— Java中一切数据和运算的基础 63 3.5 习题 65 第4章 Java中的程序执行流程 67 教学视频:1小时57分钟 4.1 顺序执行 67 4.2 使用if-else让程序懂得判断 68 4.2.1 if语句 68 4.2.2 ...
Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。 10、&和&&的区别。 &是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and)。 11、HashMap...
3.4 小结:基本数据类型—— Java中一切数据和运算的基础 63 3.5 习题 65 第4章 Java中的程序执行流程 67 教学视频:1小时57分钟 4.1 顺序执行 67 4.2 使用if-else让程序懂得判断 68 4.2.1 if语句 68 4.2.2 ...
学生提问:非静态内部类对象和外部类对象的关系是怎样的? 206 6.7.2 静态内部类 207 学生提问:为什么静态内部类实例方法也不能访问外部类的实例属性呢? 207 学生提问:接口里是否能定义内部接口? 208 6.7.3 ...
Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。 13、&和&&的区别。 &是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and)。 14、...
232 11.7 习题 232 第12章 内部类(精彩视频:71分钟) 234 12.1 非静态内部类 234 12.1.1 创建非静态内部类 234 12.1.2 在外部类中访问内部类 235 12.1.3 在外部类外访问内部类 236 12.1.4 在内部类中访问外部类 ...
4.3属性隐藏和方法的覆盖148 4.3.1属性的隐藏148 4.3.2方法的覆盖151 4.4构造方法的继承154 4.5super的使用156 4.5.1用super引用父类的成员156 4.5.2使用super调用父类的构造方法157 4.6继承的内部处理158 ...
调用父类构造器(注意调用父类构造器之前已经给父类的非静态的属性显示赋值,如果有显示赋值的话) 5.父类构造器执行完后,如果自己声明属性的同时有显示的赋值,那么进行显示赋值把默认值覆盖 6.执行匿名代码块 7....
2.5.方法的覆盖: 11 2.6.各种数据类型之间的相互转换: 12 3.静态成员 13 4. Final关键字: 13 5. 抽象类: 13 6. 接口 14 7. 接口与抽象类的区别: 15 8. 设计模式 15 单一设计模式: 15 策略...
5.7 成员与静态方法的关系 71 5.8 包与导入 72 5.9 访问控制符 74 5.10 重载 77 5.11 构造函数 79 5.12 类的初始化 83 5.12.1 静态块 84 5.12.2 实例块 84 5.13 巩固练习 85 第6章 数组 86 6.1...
并调用他们的属性和方法。 7,写Shape类,要求如下: 1.int类型属性x和y,分别表示图形的中心点坐标 2.无参构造器 3.构造器,对x和y进行初始化 4.draw()方法,输出"Shape draw" 写Circle类,继承Shape类,要求...
掌握静态方法的定义和使用方法; 掌握Object类中equals方法和toString方法的覆盖方法。 二、实验内容 1、设计一个名为figure的图形软件包(package)。包中包含三角形、矩形、圆三个类。要求:(1)每个类都要构造...
Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。 10、&和&&的区别。 &是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and)。 11、HashMap...
A) 抽象类的关键字是abstract,在抽象类中可以定义变量和方法。 B) 抽象类中的方法如果可以有实现体,如果没有实现体,则该方法叫做抽象方法必须加关键字abstract修饰该方法。 C) 抽象类中至少需要有一个方法被定义...