动手动脑(10.17)
时间:2019-10-17
本文章向大家介绍动手动脑(10.17),主要包括动手动脑(10.17)使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1.
以下代码为何无法通过编译?哪儿出错了?
因为查不到Foo(),所以无法通过编译。错在:在错误的下方中已经定义了Foo类,之后定义的Foo()中有参数,而在错误处中Foo()中没有参数,所以导致错误
2.
package classtext1; public class homework { { field=200; } public int field = 100; public homework(int value) { this.field=value; } public homework() { } public static void main(String[] args) { homework obj = new homework(); System.out.println(obj.field); obj=new homework(300); System.out.println(obj.field); } }
编译结果:
函数中定义的默认值谁排在前面谁被执行。而有参的构造函数则调用谁则会执行谁。
3.
静态初始化块只执行一次,而创建子类型的对象时其父类型的静态初始化块的执行。
4.
静态方法中只允许访问静态数据,那么,如何在静态方法中访问类的实例成员(即没有附加static关键字的字段或方法)?
public class Satic { public static void Satic1(Satic n) { n.Satic2(); } public static void Satic2() { System.out.println("hello world"); } public static void main(String[] args) { Satic b = new Satic(); Satic1(b); } }
5.两对整数明明完全一样,为何一个输出true,一个输出false?
输出诡异的结果,原因何在?
Integer类只对-128~127之间的对象做了缓存,(Integer)127 == (Integer)127两边装箱后,实际指向堆内存中同一个对象,(Integer)129 == (Integer)129,装箱为引用类型后,没有做缓存,指向堆内存中不同对象,所以比较结果为false。其源代码为
从中可以更清楚的看到。
6.使用类的静态字段和构造函数,可以跟踪某个类所创建对象的个数。请写一个类,在任何时候都可以向它查询“你已经创建了多少个对象?”
public class Satic { public static int sum=0; public static void Satic1(Satic n) { ++sum; n.Satic2(); } public static void Satic2() { System.out.println("你已经创建了"+sum+"个对象"); } public static void main(String[] args) { Satic b = new Satic(); Satic1(b); } }
原文地址:https://www.cnblogs.com/yangxionghao/p/11691984.html
- WCF技术剖析之三十:一个很有用的WCF调用编程技巧[上篇]
- WCF技术剖析之十八:消息契约(Message Contract)和基于消息契约的序列化
- WCF技术剖析之三十:一个很有用的WCF调用编程技巧[上篇]
- 成为更好程序员的8种途径
- 探秘Tomcat——启动篇
- ai量化系统架构的思考
- 探秘Tomcat——连接器和容器的优雅启动
- 谈谈分布式事务之三: System.Transactions事务详解[上篇]
- WCF技术剖析之十九:深度剖析消息编码(Encoding)实现(上篇)
- 谈谈分布式事务之二:基于DTC的分布式事务管理模型[下篇]
- 孙明俊:人工智能之算力演进
- 探秘Tomcat——一个简易的Servlet容器
- 2017年与机器学习相关的10大Python开源库
- 控制并发访问的三道屏障: WCF限流(Throttling)体系探秘[上篇]
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- python第二十四课——set中的函数
- python第二十五课——闭包
- LNMP架构应用实战——PHP扩展及缓存插件安装
- python第二十六课——装饰器
- LNMP架构应用实战——openssl升级最新版本
- python第二十七课——os模块
- python第二十八课——编码小常识
- Linux系统——KVM虚拟机安装与管理
- python第二十九课——文件读写(读取读取中文字符)
- python第二十九课——文件读写(readline()和readlines()的使用)
- linux系统运维企业常见面试题集合(一)
- python第二十九课——文件读写(写数据的操作)
- python第二十九课——文件读写(复制文件)
- python第三十课--异常(异常处理定义格式和常见类型)
- python第三十课--异常(finally讲解)