黑马程序员技术交流社区

标题: 基础 [打印本页]

作者: 李峰123    时间: 2018-11-14 20:44
标题: 基础
JAVA20期技术贴
一、        Java是什么
Java 是由 Sun Microsystems 在 1995 年首先发布的编程语言和计算平台。Java 是一项用于开发应用程序的技术,可以让 Web 变得更有意思和更实用。有许多应用程序和 Web 站点只有在安装 Java 后才能正常工作,而且这样的应用程序和 Web 站点日益增多。Java 快速、安全、可靠。从笔记本电脑到数据中心,从游戏控制台到科学超级计算机,从手机到互联网,Java 无处不在!
二、        Java能做什么
Java可以编写桌面应用程序(C/S Client/Server)、Web应用程序(B/S Browser/Server)、分布式系统和嵌入式系统应用程序等。Java最主要的作用是为各种应用提供强大的后台服务
三、        技术总结
bit 最小单位
Byte 字节
tab:大空格
/:斜杠
\反斜杠
启动:WIN+R(打开运行窗口) 输入cmd回车
切换盘符 盘符名称+:(英文冒号)
进入文件:cd+ (空格)+文件名(可以使用tap切换)
返回上一级:cd ..(英文点)
进入多级文件夹:cd 文件1\文件2\文件3
返回根目录:cd \
查看当前内容:dir
清屏:cls
退出:exit
java是跨平台的,jvm不是
JRE 运行
JDK 开发
JDK(编译等开发工具){JRE(运行类库)[JVM(核心)]}
jdk安装:关闭公共 位置不能有中文跟空格
系统—新建—环境变量—变量名:JAVA_HOME
变量值:jdk文件所在位置
双击Path  编辑 在最后面添加;%JAVA_HOME%\bin
(任何程序都可以)HelloWorld

编写 //编写一个.java文件
(分号一定要是英文分号)
编译 javac 文件名.java //使用javac
运行 java 文件名 java //执行程序
2-3步如上
注释写法:
(不影响程序运行)
// 单行注释 (只要是//开头 直至本行结束都是注释信息)
/* */ 多行(区块)注释 (/*开头 */结尾 无论占用多少行,只要是在这个范围之内,都算多行注释)
例子:以后要写的:
另:ctrl+s 文件保存
输出语句必须写注释
关键字
java当中有特殊含义的/被保留的/不能随意使用的字符
已经在java中被使用的单词,我们写程序的时候,就不要写了
变颜色的 就是关键字 都是小写的
特点:
1. 完全小写的纯英文字母
2. 在增强版的记事本当中有特殊颜色的
标识符 (各种各样的名字)
自个儿起的名字都是标识符
命名规则 (硬性要求)
1. 包含英文字母26个(区分大小写)/0-9数字/$美元符号/_下划线
2. 标识符不能以数字开头
3. 标识符不能是关键字
命名规范(软性建议)
1. 类名规范:首字母大写,后面每个单词首字母大写 大驼峰式
2. 变量名规范:首字母小写,后面每个单词首字母大写 小驼峰式
3. 方法名规范:同变量名
类名:HelloWorld(文件名) 方法名:main
引用数据类型(字符串.数组/类/接口/lambda)
基本数据类型(四类八种):
整数 byte short int(21亿) long (19位)
浮点数(小数) float double
字符 char (6万)
布尔 boolean 只有对错(ture,false)
字节数越多就越精确
注意事项:
1. 字符串不是基本类型,而是引用类型
2. 浮点型可能只是一个近似值,并非精确的值
3. 数据范围跟字节数不一定相关,例如float数据范围比long更加广泛,但是float是4字节,long是8字节
4. 浮点数当中默认类型是double,如如果一定要使用float类型,需要加上一个后缀F
如果是整数,默认为int类型,如果一定要使用long类型,需要加上一个后缀L.推荐使用大写字母后缀
变量(Variable):就是一个小的存储空间,用来存数据的
程序运行期间,内容可以发生改变的量
创建一个变量并且使用的格式:
数据类型 变量名称; //创建了一个变量
变量名称 = 数据值; //=赋值,将右边的数据值,赋值给左边的变量
一步到位的格式:
数据类型 变量名称 = 数据值; //在创建一个变量的同时,立刻放入指定的数据值
常量:在运行过程中,不可改变的量
变量:在一个大括号内,变量的名字不能相同
变量赋值:定义的变量,不赋值不能使用
public class Demo1 {
                public static void main(String[] args) {
                   整数型:
                       byte short int(默认) long    它们范围是从小到大
                   浮点:
                       float double(默认)           从小到大
                   字符:
                       char
                   布尔:
                       boolean
                */
                //把小范围数据  给 大范围数据(自动转换)
                long num = 10;
               
                //200L 是long类型  赋值 给 int类型... 从大到小..
                //从long转换到int可能会有损失
                int num2 = (int)200L;   //将200L long类型的数据,强转为int类型,然后赋值给int变量num2
           System.out.println(num2);
          //强制转换   数据溢出
           int num3 = (int)30000000000000L;//这个时候已经发生了 数据溢出的问题
           System.out.println(num3);//打印出来的结果,是无法预料的,反正不是我们想要的数据
                //强制转换   数据精度损失
                //double  --> int
                int num4 = (int)3.99;   //小数会丢掉
                System.out.println(num4);
               
               
                //byte short char  三种数据类型相加的时候,都会先变成int数据类型然后再相加,得到的结果也是int
                byte b1 = 10;
                char c1 = 'A'; //65
                //byte + char  ---> int + int  结果也是int
                int b2 = b1 + c1;
                System.out.println(b2);
For循环示意

方法示意


方法调用

数组

数组元素反转思路




继承关系

一个类只有一个直接父类(单继承),但一个父类可以有多个子类(多级继承)


抽象概念






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2