java初学3
1、包装类
Java为每个原始类型提供了封装类,Integer是java为int提供的封装类。
	int的默认值为0,而Integer的默认值为null,
	即Integer可以区分出未赋值和值为0的区别,int则无法表达出未赋值的情况,
Integer类型的值会在堆空间开辟存储区域,
	int 类型的值会存放于栈空间,存储和读取速度快于Integer值;
	但是Integer类提供了多个和整数操作相关的方法,
	如进制转换,大小比较,类型转换等,这是int 无法比拟的;

| boolean bool = false; Boolean b2 = new Boolean(bool); Integer i = new Integer(3); int i2 = i.intValue(); Boolean b1 = new Boolean("TRue");//true boolean b2 = b1.booleanValue(); Float f = new Float("3.14");//3.14 Integer i2 = new Integer("123s");//NumberFormatException | 
2、自动装箱&自动拆箱
int i1 = 12;
int i2 = 12;
System.out.println(i1 == i2)//true Integer in1 = new Integer(12);
Integer in2 = new Integer(12);
System.out.println(in1 == in2)//false in1 = 12;
in2 = 12;
System.out.println(in1 == in2)//true in1 = -250;
in2 = -250;
System.out.println(in1 == in2)//false //这里涉及到了一个享元模式
//就是说在你操作整数的时候,有一个区间的数【-128~127】,你会经常使//用,它会缓存起来,所以-250为false,12为true
//byte,short,integer,long都是一样的
| Integer i = 3;//装箱 int i2 = i;//拆箱 Object flag = new Boolean(false); if(flag instanceof Boolean){ Boolean b = (Boolean)flag; boolean b2 = b; } | 
3、基本类型和String之间的转换
| String str = "17"; int i = Integer.parseInt(str);//String  --> 基本类型 String s1 = String.valueOf(i);//基本类型 --> String | 
.....main.....{
    {
         int x = 1;
         System.out.println("普通代码块" + x);
    }
    int x = 99;
    System.out.println("代码块之外" + x);
}
//普通代码块1
//代码块之外99
B、构造代码块
public class Demo {
    {
     System.out.println("我是构造代码块");
    }
    public Demo(){
    System.out.println("我是构造方法");
    }
    public static void main(String[] args) {
     System.out.println("main");
     Demo d1  = new Demo();
     Demo d2  = new Demo();
    }
}
//main
//我是构造代码块
//我是构造方法
//我是构造代码块
//我是构造方法
C、静态代码块
public class Demo {
    {
    System.out.println("我是构造代码块");
    }
    public Demo(){
    System.out.println("我是构造方法");
    }
    static {
    System.out.println("我是静态代码块");
    }
    public static void main(String[] args) {
    System.out.println("Main");
    new Demo();
    new Demo();
   }
}
//我是静态代码块
//main
//我是构造代码块
//我是构造方法
//我是构造代码块
//我是构造方法
D、同步代码块


6、final关键字
java初学3的更多相关文章
- java初学的分析
		java初学的分析第一阶段:入门阶段学习目标:简单项目开发学习内容:1.Java入门书籍,Java基础知识.关于Java入门级的书,给大家推荐过<Java编程思想>.<Java核心技 ... 
- 【全网最优方法】JAVA初学:错误: 找不到或无法加载主类HelloWorld
		JAVA初学:错误: 找不到或无法加载主类 HelloWorld 我这是看的黑马2019网课(B站)出现的问题. 放一下别人的图,我也是大概的问题:就是javac没问题,java却无论怎么弄都报错. ... 
- (Java初学篇)IDEA项目新建流程和软件配置优化以及怎么彻底删除项目
		相信很多小伙伴们在初学 Java 时都会出现这样的情况,就是在网上一顿搜索加捣鼓终于把 JDK 和IDEA 这两款软件安装配置好,但是发现面对这个陌生的软件此时却无从下手,那么接下来我就给大家简单地介 ... 
- sqlite - java 初学
		进来准备使用一种embedded database,即嵌入式数据库,方便随项目本地存储.目前学习打算是sqlite和H2. document:http://www.runoob.com/sqlite/ ... 
- Java 初学记录之可执行jar包
		环境 jdk7 jre7 当我用jdk7开发的时候,编写完成可执行的jar工具,并且成功使用. 当我在另一台机器安装了jre6,再次运行我的小工具jar 的时候,报错 解决: http://stack ... 
- JAVA初学(1):值类型和引用类型的区别
		JAVA值类型和引用类型的区别(转) [定义] 引用类型表示你操作的数据是同一个,也就 ... 
- Java初学随笔
		背景 狡兔三窟,在使用了近7-8年的C#后,考虑到云化的到来,还是要面向更多的语言与技术,近期决定学习scala,先从Java为跳板,最后达到学会并熟练 使用scala的目的. <核心技术> ... 
- java初学知识点
		public class EnumTest { public static void main(String[] args) { Size s=Size.SMALL; Size t=Size.LARG ... 
- Java初学(四)
		一.图解二维数组 二.图解动态创建二维数组 三.杨辉三角练习: import java.util.Scanner; class Array2Demo{ //实现杨辉三角 public static v ... 
- Java初学(三)
		一.使用键盘录入数据 三步:1.导入包:import java.util.Scanner; 2.创建键盘录入对象:Scanner sc=new Scanner(System.in); 3.通过 ... 
随机推荐
- POJ-1469 COURSES---二分图最大匹配--匈牙利算法
			题目链接: https://vjudge.net/problem/POJ-1469 题目大意: 给你p门课程和n个学生,一个学生可以选0门,1门,或者多门课程,现在要求一个由p个学生组成的集合,满足下 ... 
- [Pytorch] pytorch笔记 <二>
			pytorch笔记2 用到的关于plt的总结 plt.scatter scatter(x, y, s=None, c=None, marker=None, cmap=None, norm=None, ... 
- 2017.10.26   JavaWeb----第五章 JavaBean技术
			JavaWeb----第五章 JavaBean技术 (1)JavaBean技术 JavaBean技术是javaweb程序的重要组成部分,是一个可重复使用的软件组件,是用Java语言编写的.遵循一定的标 ... 
- 第46章 	DCMI—OV5640摄像头—零死角玩转STM32-F429系列
			第46章 DCMI—OV5640摄像头 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com ... 
- 使用Newtonsoft.json 解决 Asp.Net MVC DateTime类型数据Json格式化问题
			解决思路 众所周知,MVC中调用的微软的组件JavaScriptSerialer...,格式DateTime类型数据需要在客户端专门解. 还知道,NewtonSoft.json可以“正确”的格式化Da ... 
- NestedScrollView和RecyclerView使用,并设置间距
			NestedScrollView和RecyclerView使用,并设置间距: 效果图如下: 1.NestedScrollView 和RecyclerView嵌套问题(类似ScrollView 和lis ... 
- BZOJ1004: [HNOI2008]Cards(Burnside引理 背包dp)
			Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 4255 Solved: 2582[Submit][Status][Discuss] Descript ... 
- Servlet学习笔记03——什么是DAO?
			1.案例 (1)添加用户 step1.建表 create table t_user( id int primary key auto_increment, username varchar(50) u ... 
- VM虚拟机里的Ubuntu系统怎么设置屏幕分辨率
			说白了就是安装VMWare tools工具,步骤如下: 1)在VMWare中启动ubuntu虚拟机 2)在VMWare中:右键单击启动虚拟机,点击[安装vmware tools] 3)在ubuntu中 ... 
- php-5.6.26源代码 - opcode处理器的注入
			.初始化 opcode处理器列表 // main实现在文件“php-5.6.26\sapi\cgi\cgi_main.c” int main(int argc, char *argv[]) { if ... 
