(直接百度的)
Java语言是一款面向对象的一款高级语言是由Sun Microsystems公司(现已被oracle公司收购)。由James Gosling和同事们共同研发,并在1995年正式推出,据oracle官方数据指数,目前全球已有上亿的系统是使用Java开发的。Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。
Java特点:
1,跨平台性:跨平台性是指软件可以不受计算机硬件和操作系统的约束而在任意计算机环境下正常运行。 Java自带的虚拟机很好地实现了跨平台性。 Java源程序代码经过编译后生成二进制的字节码是与平台无关的,但是可被Java虚拟机识别的一种机器码指令,Java虚拟机提供了一个字节码到底层硬件平台及操作系统的屏障,使得Java语言具备跨平台性。
2,简单:Java语言是一种相当简洁的“面向对象”程序设计语言。Java语言省略了C++语言中所有的难以理解、容易混淆的特性,例如头文件、指针、结构、单元、运算符重载、虚拟基础类等。它更加严谨、简洁。
**3,面向对象:**面向对象技术使得应用程序的开发变得简单易用,节省代码。Java是一种面向对象的语言,也继承了面向对象的诸多好处,如代码扩展、代码复用等。
4,安全性:Java编译时要进行Java语言和语义的检查,保证每个变量对应一个相应的值,编译后生成Java类。运行时Java类需要类加载器载入,并经由字节码校验器校验之后才可以运行。 Java类在网络上使用时,对它的权限进行了设置,保证了被访问用户的安全性。
**5,多线程:**是一种轻量级进程,是现代程序设计中必不可少的一种特性。多线程处理能力使得程序能够具有更好的交互性、实时性。
内存与硬盘区别:
内存:速度快 容量小 临时存储的
硬盘:速度慢 容量大 永久存储的
CPU
程序:数据可视化 + 业务逻辑 + 数据的存储
B/S: 通过游览器来访问的程序。
C/S:通过本地客户端访问的项目。
JAVA:用来写程序的
1,java SE 2 java EE
学习Java体系结构:
javaSE
mysql JDBC
java-web(java EE) 前端
框架 + oracle
JAVA两大核心机制:
1,虚拟机(JVM)
.java --javac -->.class—java–>运行
2,垃圾回收机制(自动回收)
JDK:java开发工具包
jre:java运行环境
内存中:
1位(bit):只能存储0跟1
1字节(byte):8个bit。内存申请以字节为最小单元。
package day01;
public class HelloWorld {
public static void main(String[] args) {
/*
* 整数:
* byte(1) short(2) int(4) long(8)
*
* byte:-128 127
*
* 小数:
* float(4) double(8)
*
* 布尔:boolean(1): true false
*
* 字符:char(2)
*
* 面试题:
* 1 int是几个字节?
* 默认是什么类型?int,4个字节
* 3.14默认是什么类型?double
* java中基本数据类型有哪些?
* 4类8种
*
* 变量:
* 数据类型 变量名 = 变量值;
*
* = 是赋值的意思,表示把右边的值存在左边的变量中。它的优先级是最低的,==才是相等 。
* 每行程序写完以后用;号表示(Python是缩进)
* 变量必须声明以后才可以使用。声明只能声明一次,赋值可以多次。临时变量必须初始化(第一次赋值)才能使用
* 当=两边的类型不一致需要先把类型转成相同的。类型转换分为自动转换跟强制类型转换。
* 从低到高是自动类型转换。从高低是强制类型转换。
* 强转有风险,使用需谨慎:
* 1,溢出 2,精度丢失
* char:长度为1,单引号引起来。char可以使用编码值来使用或者赋值。java中字符是使用Unicode编码,一个字符2个字节
*
*/
byte b = 2 ;
short s =3 ;
long ll = 4 ;
int i = 1;
int a ;//变量的声明
a = 2 ;//变量的赋值
a = 3 ;
a = 4 ;
float f = 3.14F ;
double d = 3.14 ;
int c = s ;// 右边的short(低)转成int(高)默认类型转换(自动转换)。
// 1,溢出
i = 129 ;
byte b1 = (byte) i ;// 右边的int(高)转成byte(低)需要强制类型转换。
// 2,精度丢失
i = (int) d ;
boolean b2 = true ;
char c1 = 'A';
// 输出到控制台
System.out.println(c1);
}
}
练习题:
1,(数据类型):编写一个Java程序,定义变量,描述嫦娥姐姐的姓名、年龄、性别、体重、地址、婚否等信息。
package day01;
public class ChangEJieJie {
//1,(数据类型):编写一个Java程序,定义变量,描述嫦娥姐姐的姓名、年龄、性别、体重、地址、婚否等信息。
public static void information(){
int age =18;
char sex ='女';
double weight=47.7;
String name ="嫦娥姐姐";
String address ="月球";
String marry ="白富美";
System.out.println(age);
System.out.println(sex);
System.out.println(weight);
System.out.println(name);
System.out.println(address);
System.out.println(marry);
}
public static void main(String[] args) {
information();
}
}
面试题:
1,简单介绍一下你认为的Java?
Java简介
2,Java的8大基本数据类型?
byte short int long
float double
boolean
char
3,int 的字节数?
4
4,Java强制转换有什么风险?
① 精度丢失
② 溢出
5,谈谈JAVA两大核心机制?
一、JVM
① jvm可以理解成一个以字节码为机器指令的CPU
② 对于不同的运行平台,有不同的虚拟机,所以Java是跨平台的
二、垃圾回收机制
Java的内存管理实际上就是对象的管理,GC的任务就是监控new出来的对象的地址、大小以及使用情况,当对象没有任何声明的变量指向它时,GC就会把它回收掉,来释放内存资源。