1.java单机项目

2.JavaSE又被称为J2SE,JavaEE和JavaME类同。

3.Java特性(总结)

(1)跨平台/可移植性:相同的Java代码可以在任何一个支持的平台(操作系统)上运行,这是因为.java源文件首先会编译为.class的字节码文件,这个字节码文件会在不同操作系统的不同JVM上执行,最终获得相同的效果。这也正是“一次编译,处处运行”的原理。同时,Java规定所有的数据类型在所有平台上占得内存都相同,保证了跨平台性的可行性。

(2)面向对象:Java是完全面向对象的编程语言,其他面向对象的语言还有C#,C++,Python等。

(3)安全性:Java适合于其分布式/网络服务的开发,是安全性很高的语言。

(4)简单:Java较C语言比较简单。同时去除了指针的概念。

(5)高效性:Java通过即时编译技术,即将一些经常容易用到的热点代码的机器码保存在本地,这样大大提升了Java的执行效率。

(6)分布式:

(7)多线程:Java可以同时开启多个线程、多级线程,可以提供更好的交互响应和实时行为。

(9)健壮性:Java的健壮性体现在一是在编写代码时就显示了许多C系语言在编译时才会出现的错误;二是Java会处理一些可能的异常,将他们在try-catch块中处理或是抛出。

(10)垃圾处理机制:也称GC,是一种系统级线程,可以实时跟踪java中用不到的内存并自动将其释放,避免了C系语言需要程序员自己清除垃圾的工作。但仍可能造成内存的溢出或崩溃。

4.开发一个Java程序:

(1)安装jdk(java development kit) jdk = jre+开发工具包 jre = 核心API+JVM。其中jdk用于开发java程序,jre用于运行java程序。

(2)配置环境变量:配置%JAVA_HOME%为jdk目录,PATH添加%JAVA_HOME%/bin。目的是为了在系统中处处可以直接运行java命令。

(3)创建.java源文件,在其中添加java代码。其中如果有主类,主类名必须和文件名一致。

(4)在源文件目录下,使用cmd,输入javac 原文件名.java 命令,进行编译。编译完成后输入java 源文件名 命令,执行字节码文件。在jdk11中也可以直接输入java 源文件名.java 编译+运行。

(5)注意事项:在代码中所有的标点符号都必须是英文状态;代码需要有良好的格式:在java代码中 以大括号进行层级区分 在同一个大括号中的代码 应该具有相同的缩进层次 缩进一般一个层级缩进一个制表符(Tab);在java代码中 每条语句结束必须以分号结尾;在java中 所有文件的存放路径或者软件的安装路径都必须是全英文的,路径中不能出现中文或空格 等特殊符号;

当修改了java源程序之后 每次都需要重新编译运行。

5.java的两个核心:jvm和gc

6.数据类型、运算符、表达式要点

(1)输入整数默认为int类型。bool、char、short类型的变量,一旦经过运算,其类型都会变成int类型,不能直接赋值。但是赋值运算符可以自动将其类型强制转换。

(2)发生上溢(正变负)时,数值的计算使用补码的计算过程。

(3)字符串拼接中有整型时,在字符串前面的整型进行计算,在字符串后面的整型视为字符串。

(4)表达式的计算,首先是按照从左向右的顺序,其次注意自增自减变量在表达式中的变化,如

  int y = x++ + x++ + x++;
System.out.println(y);// 10 +11 + 12 = 33

(5)模运算规则:被取余数的符号决定余数的符号,如

int ss1 =  7 % 3;// 1
int ss2 = -7 % 3; //-1
int ss3 = 7 % -3 ; // 1

(6)数据类型表示的范围大小:bool->char/short->int->long->float->double。大的自动兼容小的,多个类型进行运算,结果自动转为大的类型。

(7)浮点数运算,两个float类型运算结果仍然为float类型。

(8)字符运算中使用的是字符的ascii码。常用的有'a'=97 'A'=65 '0'=48。注意区分(char)0、(int)'0'和'0'。

(9)区分Java中逻辑与/或和按位与/或:看运算符两边的类型,如果是整型则为位运算符,如果是boolean类型则为逻辑运算符。

(10)交换两数内存最少、时间最短的方法是异或再异或。

(11)long类型表示超出int范围的数,需要在后面加上l。

(12)十进制直接输入,8进制前面加0,16进制前面加0x,2进制前面加0b。

(13)由于double和float类型并不能够存储精确的数值,因此最好不要使用浮点数类型比较,会得到一定精度以上的数值相等的情况。如果要保存很大的数可以使用大整数或者字符串。

(14)char可以存英文、中文字符、数字以及unicode码,因此它的大小是2字节。boolean只有true和false两个值,因此它的大小是1bit。

(*15)utf-8是一种unicode编码,它使用变长存储,一个n字节的utf-8码,第一个字节前n位是1,后面每个字节高两位都是10。这样保证了只有128个的ascii码不会浪费空间。

(16)如图所示,两个int整数相乘发生了上溢,但在转化为long类型之前运算就结束了,错误的结果还是保存到了long类型中。正确的写法应该是将任意一个强转为long类型。

int money =1000000000;
int year = 20;
long total = money * year;
System.out.println(total);//-1474836480

(17)一般只针对两个整型求余,但浮点数也可以求余。

7.switch语句

(1)switch的表达式的类型: char, byte, short, int及其对应的引用类型, enum(枚举) , String(jdk7+)

(2)default可以出现在任意位置

(3)switch语句只能实现具体、有限的值的逻辑判断switch语句可以实现的,if语句一定可以实现

8.带标签的break和continue

 outter: for(int i = 101; i < 150 ;i ++){
for(int j = 2; j < i/2 ; j++){
if(i % j == 0 ){
continue outter;
}
}
System.out.println(i);
}

9.错题(2)

解析:java方法中可以一次传入多个参数,通过数组/list/set以及不定数组等,但是不可以一次返回多个参数,只能放在数组/集合中返回。

D:(char)0 == 0 ,由于数组中的字符一定是可以输入的ascii字符,一定成立;a[i]<=(char)9表示ascii表中前9个ascii字符,而0-9是ascii码中48-57的字符。

3java基础补充(今天和昨天学习内容整理)的更多相关文章

  1. java学习内容整理

    转自:http://www.cnblogs.com/caoleiCoding/p/6170555.html 首先,我个人比较推崇的学习方法是:先学java前段,也就是HTML,css,js,因为学习j ...

  2. Pythn基础课程笔记day03_学习内容概要及作业讲解

    第三天_学习内容概要 今日内容概要 1.整形 2.布尔类型 3.字符串 内容回顾和补充 内容回顾 利用思维导图,罗列复习自己学习的内容,巩固知识点. xmind 软件 processon 网站 补充 ...

  3. spring boot(10) 基础学习内容

    A Spring boot(10) 基础学习内容 B SpringBoot(16) 基础学习内容

  4. web前端开发学习内容

    应该 具备的 知识技能 :懂web标准,熟练手写 xhtml css3 并符合 符合w3c标准                       代码能 兼容主流浏览器.ie6.7.8.9 ff 等.    ...

  5. 【笨木头Lua专栏】基础补充04:迭代器初探

    今天学习的内容还蛮有意思的,让我兴奋了一下~ 笨木头花心贡献,哈?花心?不,是用心~ 转载请注明,原文地址: http://www.benmutou.com/archives/1714 文章来源:笨木 ...

  6. 【代码笔记】Java常识性基础补充(一)——赋值运算符、逻辑运算符、三元运算符、Scanner类、键盘输入、Random类、随机数

    为什么要进行Java常识性基础补充? 之前学习Java语言,学得很多很杂,而且是很多不同的方面插入讲解的,比如在跟班上课,自学java编程例子,java语法,过了很久,因为各种原因长时间不怎么写,有时 ...

  7. 【黑客基础】Windows PowerShell 脚本学习(上)

    视频地址:[黑客基础]Windows PowerShell 脚本学习 2019.12.05 学习笔记 1.$PSVersionTable :查看PowerShell的版本信息. 2.PowerShel ...

  8. IT软件人员的技术学习内容(写给技术迷茫中的你) - 项目管理系列文章

    前面笔者曾经写过一篇关于IT从业者的职业道路文章(见笔者文:IT从业者的职业道路(从程序员到部门经理) - 项目管理系列文章).然后有读者提建议说写写技术方面的路线,所以就有了本文.本文从初学者到思想 ...

  9. javascript学习内容--改变样式、取消设置、显示内容、隐藏内容

    <head> <style> body{font-size:12px;} #txt{ height:400px; width:600px; border:#333 solid ...

随机推荐

  1. Git学习笔记(快速上手)

    Git学习 1. 基本使用 安装成功后在开始菜单中会有Git项,菜单下有3个程序:任意文件夹下右键也可以看到对应的程序! Git Bash:Unix与Linux风格的命令行,使用最多,推荐最多 Git ...

  2. mount 挂载操作

    windows系统显示光盘内容 光盘文件-------->光驱设备--------->双击访问CD驱动器(访问点) Linux系统显示光盘内容 光盘文件-------->光驱设备-- ...

  3. 基于Android平台的图书管理系统的制作(2)

    上一篇讲解了制作图书管理系统的初衷与要求,和app首页的代码. 下面来介绍图书管理系统的服务对象:学生 学生类的设计: 个人信息:账号.密码.姓名.学号.邮箱.年龄. 借阅信息:借阅总数(不超过十本) ...

  4. 【VBA】测试程序运行时间,延时方法

    测试程序运行时间 Dim start As Date start = Now() Dim i As Long For i = 0 To 10000000 ' 10 million Next Debug ...

  5. 工具篇:介绍几个好用的guava工具类

    前言 平时我们都会封装一些处理缓存或其他的小工具.但每个人都封装一次,重复造轮子,有点费时间.有没有一些好的工具库推荐-guava.guava是谷歌基于java封装好的开源库,它的性能.实用性,比我们 ...

  6. MySQL进阶:主主复制+Keepalived高可用

    Blog:博客园 个人 概述 mysql主主复制 所谓主主复制,即双主备份,或者叫互作主从复制,每台master既是master,又是slave.这种方案,既做到了访问量的压力分流,同时也解决了单点故 ...

  7. markdown写ppt (史上最全)

    文章很长,建议收藏起来,慢慢读! 疯狂创客圈为小伙伴奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : <Netty Zookeeper Redis 高并发实战> 面试必备 + 大厂必备 ...

  8. OpenCV随笔

    创建一个窗口#zeros(shape,dtype=float,order='C')#shape:形状,dtype:数据类型,可选参数,默认numpy.float64img = np.zeros((50 ...

  9. Flannel和Calico网络插件对比

    1.Kubernetes通信问题 1.容器间通信:即同一个Pod内多个容器间通信,通常使用loopback来实现. 2.Pod间通信:K8s要求,Pod和Pod之间通信必须使用Pod-IP 直接访问另 ...

  10. 温故知新,CSharp遇见字符串比较(String Comparison),更佳科学的比较字符串

    背景 在C#中,我们经常会遇到需要比较字符串的场景,有时候甚至因为外部输入的不确定性,我们需要忽略大小写来进行比较,以达到判断业务的述求. 对字符串用法的建议 使用.NET进行开发时,请遵循以下简要建 ...