• 授课时间:

    现场安排开课时间

  • 授课对象:

    想学Java的学员

  • 网报价格:电询    课程原价:电询
  • 咨询热线:400-998-6158
  • 授课地址:珠海市香洲区明珠南路金嘉创意谷5栋
  • 课程详情

  • 机构简介
  • 地图信息
  • 预约试听

珠海JAVA培训怎么收费

Java还剔除了C++的操作符过载overload和多继承特征,并且不使用主文件,免去了预处理程序

学习内容

适合学员应届毕业生,转行,提升, —定IT编程基础。

使用教材JAVA企业级应用

课程简介达内的Java 课程为你提供更贴近企业需求的技术方案,并在整个学习过程中,让你掌握所有相关的技术,成为那个更符合企业技术需求的 Java 工程师。

课程特色

1. 夯实 Java 基础

2. 熟悉 Linux 操作系统

3. 深入学习数据库技术

4. 系统的 Web 前端技术

5. 手写 Tomcat

6. 企业级框架

7. 专门的企业开发及部署环境

8. 规范的企业开发流程及文档

9. 云计算与互联网架构技术

课程详情:

1、Java语言基础:

计算机概述、Linux Eclipse开发环境搭建

变量、基本数据类型、运算符、流程控制、数组

对象、类、属性、方法、构造器、重载、继承、重写、封装、多态、抽象类和接口

2.Java SE核心:

项目需求文档

Object、String、StringBuilder、正则表达式、集合框架、包装类、二进制

文件、IO,线程,网络,XML、Lambda、流、反射API、日期、并发包

HTTP协议解析、TCP并发编程、线程池、POST、GET、数据库原型实战

3、WEB全栈及数据库技术

HTML5、CSS3、JavaScript、ES6

JQuery、Bootstrap、VUE

Smart Blog界面开发

MysQL.sQLDDL、DML、DQL、DCL、JDBC、数据库连接池、Druid、数据库设计

Tomcat、Servlet、Request、Response、Cookies、Session、过滤器、监听器、Thymeleaf模版引擎

Ajax、Smart Blog

4. 微服务及互联网架构

项目需求文档、IDEA开发工具使用

Spring-..Spring MC、MyBatis、MyBatisPlus、SpringBoot、shiro认证框架、AdminLTE

Eureka、Ribbon、Feign、Hystrix、Zuul、Config+Git

学子商城项目实战,项目搭建、RESTful、文件上载、AOP.拦截器

Nginx、Redis、MySQL读写分离、Kafka

5. 全栈进阶(工作冲刺)

Smart MVC 框架

索引、视图、存储过程、MySQL函数、存储过程

CMS、旅游、电信、社交、找房

Java 内存管理、GC原理、JVM参数调整、排序、二分查找、双向循环链表、二叉树、散列表

什么是装箱?什么是拆箱?

Java为每种基本数据类型都提供了对应的包装器类型,至于为什么会为每种基本数据类型提供包装器类型在此不进行阐述,有兴趣的朋友可以查阅相关资料。在Java SE5之前,如果要生成一个数值为10的Integer对象,*须这样进行:

Integer i = new Integer(10);

而在从Java SE5开始就提供了自动装箱的特性,如果要生成一个数值为10的Integer对象,只需要这样就可以了:

Integer i = 10;

这个过程中会自动根据数值创建对应的Integer对象,这就是装箱。

那什么是拆箱呢?顾名思义,跟装箱对应,就是自动将包装器类型转换为基本数据类型:

Integer i = 10; //装箱

int n = i; //拆箱

简单一点说,装箱就是 自动将基本数据类型转换为包装器类型;拆箱就是 自动将包装器类型转换为基本数据类型。

下表是基本数据类型对应的包装器类型:

装箱和拆箱是如何实现?

如下代码理解一下:

public class Main {

public static void main(String[] args) {

Integer total = 99; //自动装箱

int totalprim = total; //自定拆箱

}

}

反编译class文件之后得到如下内容:

Integer total=99;执行上面那句代码的时候,系统为我们执行了:Integer total=Integer、valueOf(99);

int totalprim=total;执行上面那句代码的时候,系统为我们执行了:int totalprim=total、intValue();

也就是在装箱的时候自动调用的是Integer的valueOf(int)方法。而在拆箱的时候自动调用的是Integer的intValue方法。

其他的也类似,比如Double、Character。

因此可以用一句话总结装箱和拆箱的实现过程:

装箱过程是通过调用包装器的valueOf方法实现的,而拆箱过程是通过调用包装器的xxxValue方法实现的。(xxx代表对应的基本数据类型)。

Java 语句 Integer i = 1; i += 1; 做了哪些事情?

首先Integer i=1;做了自动装箱(使用valueOf()方法将int装箱为Integer类型),接着i+=1;先将Integer类型的i自动拆箱成int(使用intValue()方法将Integer拆箱为int),完成加法运行之后的i再装箱成Integer类型。

下面程序的运行结果是什么?

答:答案如上注释所述,通过查看Integer的源码可以发现,针对-128到127之间的数据做了一个数据缓冲池,如果数据是该范围内的,每次并不创建新的对象,所以就有了上面的结果。

下面语句能正常执行吗?

Integer test1 = (Integer) null;

Double test2 = (Double) null;Boolean test3 = (Boolean) null;

答:上面语句可以正常执行。因为在 Java 中 null 既不是对象也不是一种类型,它仅是一种特殊的值,我们可以将其赋予任何引用类型,也可以将 ull 转化成任何类型。

下面这段代码的输出结果是什么?

public class Main {

public static void main(String[] args) {

Double i1 = 100、0;

Double i2 = 100、0;

Double i3 = 200、0;

Double i4 = 200、0;

System、out、println(i1==i2);

System、out、println(i3==i4);

}

}

实际输出结果为:

false

false

具体为什么,大家可以去查看Double类的valueOf的实现。

在这里只解释一下为什么Double类的valueOf方法会采用与Integer类的valueOf方法不同的实现。很简单:在某个范围内的整型数值的个数是有限的,而浮点数却不是。

注意,Integer、Short、Byte、Character、Long这几个类的valueOf方法的实现是类似的。

Double、Float的valueOf方法的实现是类似的。


更多培训课程,学习资讯,课程优惠等学校信息,请进入 珠海达内教育珠海C语言培训珠海PHP培训 网站详细了解,免费咨询电话:400-998-6158

预约试听
  • 姓名: *
  • 性别:
  • 手机号码: *
  • QQ:
  • 微信:
  • 其它说明:
  • 验证码: *  看不清,请点击刷新
相关课程