java中级2
来源:互联网 发布:mac怎么给iphone换铃声 编辑:程序博客网 时间:2024/06/03 06:43
instanceof 属于
是用来在运行时指出对象是否是特定类的一个实例。instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例。
用法:
result = object instanceof class
参数:
Result:布尔类型。
Object:必选项。任意对象表达式。
Class:必选项。任意已定义的对象类。
说明:
如果 object 是 class 的一个实例,则 instanceof 运算符返回 true。如果 object 不是指定类的一个实例,或者 object 是 null,则返回 false。
代码块
普通代码块:
在方法或语句中出现的{}就称为普通代码块。普通代码块和一般的语句执行顺序由他们在代码中出现的次序决定--“先出现先执行”
publicclass CodeBlock01{
publicstatic voidmain(String[] args){
{
int x=3;
System.out.println("1,普通代码块内的变量x="+x);
}
int x=1;
System.out.println("主方法内的变量x="+x);
{
int y=7;
System.out.println("2,普通代码块内的变量y="+y);
}
}
}
构造块:
直接在类中定义且没有加static关键字的代码块称为{}构造代码块。构造代码块在创建对象时被调用,每次创建对象都会被调用,并且构造代码块的执行次序优先于类构造函数。
public classCodeBlock02{
{
System.out.println("第一代码块");
}
public CodeBlock02(){
System.out.println("构造方法");
}
{
System.out.println("第二构造块");
}
public staticvoid main(String[] args){
new CodeBlock02();
new CodeBlock02();
new CodeBlock02();
}
}
静态代码块:
在java中使用static关键字声明的代码块。静态块用于初始化类,为类的属性初始化。每个静态代码块只会执行一次。由于JVM在加载类时会执行静态代码块,所以静态代码块先于主方法执行。
//如果类中包含多个静态代码块,那么将按照"先定义的代码先执行,后定义的代码后执行"。
//注意:1 静态代码块不能存在于任何方法体内。2 静态代码块不能直接访问静态实例变量和实例方法,需要通过类的实例对象来访问。
class Code{
{
System.out.println("Code的构造块");
}
static{
System.out.println("Code的静态代码块");
}
public Code(){
System.out.println("Code的构造方法");
}
}
public classCodeBlock03{
{
System.out.println("CodeBlock03的构造块");
}
static{
System.out.println("CodeBlock03的静态代码块");
}
public CodeBlock03(){
System.out.println("CodeBlock03的构造方法");
}
public staticvoid main(String[] args){
System.out.println("CodeBlock03的主方法");
new Code();
new Code();
new CodeBlock03();
new CodeBlock03();
}
}
包装类
Byte Short Integer Long Boolean Float Double Character
在八个类名中,除了Integer和Character类以后,其它六个类的类名和基本数据类型一直,只是类名的第一个字母大写即可。
对于包装类说,这些类的用途主要包含两种:
a、作为和基本数据类型对应的类类型存在,方便涉及到对象的操作。
b、包含每种基本数据类型的相关属性如最大值、最小值等,以及相关的操作方法。
String转整数类型 整数转String
int -> String
int i=12345;
String s="";
第一种方法:s=i+"";
第二种方法:s=String.valueOf(i);
这两种方法有什么区别呢?作用是不是一样的呢?是不是在任何下都能互换呢?
String -> int
s="12345";
int i;
第一种方法:i=Integer.parseInt(s);
第二种方法:i=Integer.valueOf(s).intValue();
这两种方法有什么区别呢?作用是不是一样的呢?是不是在任何下都能互换呢?
以下是答案:
第一种方法:s=i+"";//会产生两个String对象
第二种方法:s=String.valueOf(i);//直接使用String类的静态方法,只产生一个对象
第一种方法:i=Integer.parseInt(s);//直接使用静态方法,不会产生多余的对象,但会出现异常
第二种方法:i=Integer.valueOf(s).intVlaue();//Integer.valueOf(s)相当于new Integer(Integer。parseInt(s)),也会出现异常,但会多产生一个对象
- java中级2
- java中级
- java中级
- Java中级
- java私塾中级2-集合框架
- JAVA初级 中级 例子
- JAVA规则--中级篇
- java一些中级概念
- 中级java进阶
- 中级/高级java工程师
- java中级面试题
- java中级-线程基础
- 中级Java编程
- JAVA面试 中级
- java语言中级7.17
- Java中级知识点
- JAVA学习:异常中级
- 华为oj中级 201301 JAVA 题目2-3级
- Python学习笔记(三)
- mysql的几种引擎
- spring-data-mongodb使用示例
- 关于win10下mysql 5.7.19 免装 的一个小问题
- django模板中的字符串文字和自动转义
- java中级2
- PHP中的运算符---算术运算符、逻辑运算符、赋值运算符、比较运算符
- 抓包
- HDU4734 F(x) 数位dp
- 多选框批量删除后台代码
- 前端与PHP后台的选择
- 04_Shell排序
- Hbase错误及处理
- BZOJ 1103 [POI 2007] dfs序+树状数组 解题报告