JAVA简学重点复习之路

java语言的前世今生

一、 Java语言的历史

1、 了解java语言:建立在C++基础之上,java的优点是面向对象、跨平台、不使用指针等;缺点有速度慢等。
2、 Java的应用领域:Web应用、java移动开发等。
3、 Java的语言的发展过程:1998年JDK1.2发布等。
4、 和java相关几件事情:SUN公司、Oracle公司、JDK、JRE、JVM、JavaSE、javaME、javaEE、Eclipse、java和咖啡的关系、java和Android的关系。

二、 java语言的特点及平台的划分

1、 特点:简单高效、面向对象、跨平台(java源码、java字节码、JVM虚拟机、操作系统、一次编译到处运行、java跨平台但java虚拟机不跨平台)、交互式特性(网络特性比如支持TCP/IP协议、socket等)、多线程机制(轻量级)、动态的内存管理(java自动销毁释放内存、轮询机制)、安全性(异常处理)。
在这里插入图片描述
java跨平台但java虚拟机不跨平台解释图
在这里插入图片描述
java平台划分图(java ME版本目前不常用)

三、 开发环境的搭建(简单,百度即可)

1、 下载JDK(JDK包括JRE)。
2、 安装JDK。
3、 配置环境变量(安装后的jdk目录中bin是指二进制可执行文件其中最重要的是javac.exe是将java源码编译成java字节码,java.exe是将java字节码翻译执行;include是包含的头文件;lib是有jar包)。
在这里插入图片描述
注意:配置环境变量是指配置系统变量的path是为了实现直接在C盘寻找不到之后到path路径寻找jdk。
4、 测试安装。

四、第一个java程序(cmd运行,过程比较麻烦)

1、 编写java程序(注意:大小写敏感、命名规范(关键字)、源文件名和类名相同、主方法入口)
在这里插入图片描述
java程序简单解释
2、 编译java程序 javac 源文件.java
3、 运行java程序 java 类

五、 开发工具Eclipse(简单方便)

1、 点击浏览下载安装Eclipse教程
2、 Eclipse界面纵览(菜单栏、工具栏、视图、透视图、工作空间、首选项)
在这里插入图片描述
3、 创建java项目
4、 常用快捷键(ctrl+/表示选择的内容都//注释掉)
5、 项目调试(设置断点然后调试debug)

Java语言核心技术学习

一、 java基础语法

1、 掌握java基础语法:

  1. 了解内存和变量(程序=输入+处理+输出;变量三要素有数据类型、名称和取值;变量分为局部变量、实例变量和类变量)
  2. 了解标识符(给类、变量、方法、接口起的名字,命名规则是必须以大小写英文字母、美元符或者下划线开始,关键字不能作标识符、大小写敏感,驼峰命名法分为类名和接口名(比如MyTest)以及变量和方法名(比如testId))和常量名(DAY_DAY_UP)
  3. 了解关键字
  4. 描述java语法特殊单词

在这里插入图片描述
描述java语法特殊单词

  1. 掌握类和对象(类、对象、方法、属性)举例解释:类假如是汽车模型(是抽象的),对象就是类的实例化也就是具体一辆车,类的方法就是汽车的功能,类的属性就是相当于汽车配件,因此类的对象可以引用调用类的属性和方法。

2、掌握java基本数据类型(四类:布尔类型、整型、字符型、浮点型)

  1. 了解java基本数据类型

在这里插入图片描述
基本数据类型

  1. Java数据类型转换
    自动转换:范围小可以转换成包含范围小的大的类型,比如整数类型转换成double类型。注意:byte不可以转换成char类型,因为范围不属于包含关系;int类型赋值给float有很大风险,因为范围也不完全属于包含关系。
    强制转换:目标类型 变量名 = (目标类型)值,缺点:大范围转小范围时容易造成数据丢失。注意:表达式类型自动提升比如byte类型变量相加时会自动转换为int类型,这时候就需要进行强制转换。
  2. Java数据类型实例
    基本数据类型的封装类有MIN_VALUE、MAX_VALUE、SIZE,可以用基本数据类直接调用其封装类,比如Byte.MIN_VALUE、Long.MAX_VALUE等

3、 掌握java运算符和表达式(表达式的执行顺序一般情况下从左到右,但也要注意优先级比如括号)

  1. 算术运算(+ - * / %)注意:Math.random()可以是随机0-1之间的数;除数不能为零;操作符%进行运算时,运算结果取决于%左边的数的符号(正或者负)
  2. 关系运算(> >= < <= == !=)关系运算的结果是布尔数据类型
  3. 逻辑运算(& | ! && ||)注意&&是短路与,前面表达式条件不成立后面的表达式不再计算;||是短路或,前面表达式条件成立后面的表达式不再计算,否则继续执行判断后面的表达式
  4. 赋值运算(= += -= *= /= %= ++ --)注意:自增自减式注意前缀后缀式的区别,前缀是先执行自增自减在进行其他操作比如赋值,后缀是后执行自增自减
  5. 条件运算(三元运算 a?b:c)表达式a成立则执行b,否则执行c

4、 掌握java字符串和数组

  1. 字符串简介:在java中属于对象,提供String类来创建操作字符串,创建字符串可以通过直接赋值(=)创造或者使用构造函数创建(实例化比如new String(“字符串“));也可以获取字符串长度(for循环可以使用字符串调用它自带的length()方法)
  2. 字符串连接(两种方法分别是:字符串a+字符串b;字符串a.contact(字符串b))
  3. 字符串格式化(比如String.format(“%s,%d,%s“,字符串a,整型b,字符串c),可以有%c %d %f %b %s等这些类型作格式化)注意b是布尔,s是字符串,%.xf是指保留x位的浮点型数据,空字符是’\u0000’
  4. 字符串常用方法(charAt(x)输出在x位置的字符,x从0开始取值 length字符长度 substring(a,b)只取字符串a到b-1,其它截取掉,注意空格也要算进去一个字符 trim去掉字符串两边的空格 indexOf某一字符或字符串的索引位置等同于查找,从前往后找,找到就立即停止查找并返回查找的第一个字符的位置数值)字符串的位置都是从0开始
  5. Java数组简介(概念和特性,数组大小固定,访问大写长度用:数组名.length;保存的数据类型相同;数组的声明,数组没有赋值则默认为零;数组的初始化比如int[] arr={1,2,3};或者int[] arrs = new int[10];arr[0]=1;arr[1]=2;arr[2]=3;)数组的位置也是从0开始
  6. Java多维数组(比如二维数组:int[][] arr = new int[a][b])
  7. 数组的使用(访问遍历数组,for each循环)比如:int[] arr = {1,2,3}; for(int i:arr){System.out.println(i);}或者String[] arr = {“ar”, “xr”, “nb”}; for(String i:arr){System.out.println(i);}数组值可以作为参数传递
  8. Arrays工具类(算法工具进行排序查找,比如sort正序排序:int[] arr = {1,5,4,6,9,3};Arrays.sort(arr);和binarySearch二分查找:int[] arr = {1,5,4,6,9,3};int indexs = Arrays.binarySearch(arr,6);则indexs输出的值为3)

5、 掌握java流程控制

  1. 程序的执行顺序:java从入口程序main开始执行,然后至上而下顺序执行,若遇到方法调用,则程序跳转到方法内继续顺序执行
  2. Java循环:for/for each;while/do while;break/continue关键字。注意:break语句出现在嵌套循环中的内存循环时,要跳出外层循环则需要在外层循环添加标记,比如itcast:for(){ for(){ break itcast; } }
  3. Java分支:if else;if else if else if else;switch() case break case break default break。

6、 掌握java面向对象(类、对象、继承、多态)

  1. 类和对象(类和对象、构造方法(系统会定义默认构造方法,没有返回值,名称必须和类名相同,可以自己设定构造方法)、类变量(又称静态变量用static定义所有对象共享同一个,类和对象都可以直接调用访问)和实例变量(类实例化成对象再调用访问)、类方法(又称静态方法用static定义所有对象共享同一个,类和对象都可以直接调用访问)和实例方法(类实例化成对象再调用访问)、this关键字(是一个指代对象,当前对象是谁this就指的是,一般在构造方法中使用))注意:内部类(类中类)和匿名内部类
  2. Java接口(定义接口(interface进行定义,接口的方法必须是抽象的空方法比如public void eat();,不能直接实例化,可以更好的实现程序的抽象过程)、实现接口(用implements进行实现接口,都必须实现接口所有的抽象方法,一个类可以实现多个接口,用“,”隔开比如:class flyfish implements bird,fish{…})、接口继承(用extends继承接口,一个接口也可以通过extends继承多个接口,用“,”隔开;同时extends继承接口,也继承了接口的抽象方法比如:定义一个接口a,interface b extends a{…},b则也有a的抽象方法))
  3. java提供一个关键字instanceof,用来判断对象是否为某个类(或接口)的实例或者子类的实例,采用格式:对象(或者对象引用变量) instanceof 类(或者接口)。
  4. Java继承(继承语法,用extends继承,分父类和子类,子类继承可以继承父类除private以外的所有的方法和属性;方法覆盖,子类继承父类方法的基础上可以重新覆盖父类的方法;方法重载,在同一个类里面,就是方法名一样但是参数的个数或者参数的数据类型不同,包括该类的构造方法;super关键字,指的是父类的引用,可以引用父类的任何方法和变量,用super调用父类构造方法时只能一次且必须在子类构造方法的第一行)注意:Object是java中的顶级父类;final修饰的类不能被继承、修饰的方法不能被子类重写覆盖、修饰的变量是常量只能赋值一次。
  5. Java多态(java多态概念,一个方法有多个状态,既有扩展性;向上类型转换;方法的动态绑定,用父类定义传递的参数类型)注意:一个父类可以有多个子类,一个子类只能有一个父类。

7、 掌握java集合框架(比如SpringBoot等)

8、 Java中的异常(Error和Exception两种,其中Exception可以进行异常处理:try{…}catch (Exception e ){ … }finally{…},finally中的语句一定会执行包括catch中有return语句,但除System.exit(0)以外;throws Exception将异常不断抛出可以直到虚拟机,程序停止运行)

9、 Java中的包采用import导入,一般java提供的包有:java.lang(核心包)、java.util、java.net、java.io、java.awt等

10、 访问控制总结:private局限类->default局限包->protected局限包及子类->public公共

11、 Scanner类是java中主流获取命令行输入的方法(Scanner scanner = new Scanner(system.in); int a = scanner.nextInt(); )

12、 Java多线程:cpu运行一个程序,一个程序(进程)可执行多条线程。

Java核心应用

一、了解java桌面应用(目前使用不多)

1、 了解java桌面应用(AWT;Swing)
点击打开java桌面应用之开发数据库课设之学生信息管理系统
2、 AWT演示(不能实现跨平台,目前使用不多)
在这里插入图片描述
3、 Swing演示(可以实现跨平台)
在这里插入图片描述

二、了解java web应用(常使用)

1、点击浏览下载Eclipse企业版教程
2、点击浏览下载Tomcat教程
3、在Eclipse中配置Tomcat
4、配置Web应用之下载安装Eclipse中 Spring Tool 插件 Spring IDE-STS
5、JDBC和MYSQL的应用之开发学生成绩管理系统

三、了解java移动开发应用

1、配置Android开发环境(下载安装Android Studio;配置SDK;配置模拟器)
2、开发Android App应用之简单新闻客户端APP设计

Java的行业前景

一、 了解java的行业前景

1、 编程语言排行榜
在这里插入图片描述
2、 Java技术栈(Java企业级开发是主要的工作)
在这里插入图片描述

PS:以上内容均为自己总结,一为自己重点复习,二为新手入门简单学习了解java,因本人水平有限,若大家发现任何问题或者疑问可以直接在评论中提出,欢迎各位大佬指教。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

rothschildlhl

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值