JAVA学习 11.10
Java第一天
1.1 Java发展史
1995年,SUN虽然推出了Java 。 詹姆斯 高瑟林[java之父]带领自己的团队研发了java编程语言。 后来有一个公司就整了一个开发软件 Eclipse (日食) [20%]sun公司经营不善,变卖了。卖给了 Oracle(甲骨文)公司,这个公司旗下有很多产品:Oracle数据库 MySQL数据库 Java语言 TOMCAT服务器 .... java开源了[开发源代码]所以全世界的程序员都能看到底层源代码 所以就有人发现某些地方写的不咋好 有的人发现写的惊为天人 觉得不好的人 就提建议,java就改进 所以Java常青树的原因。不收费。谷歌就使用java语言研发了一个os程序---安卓 安卓操作系统是收费的。
1.2 JDK JRE JVM(b)
JDK : JAVA开发工具包。 我们电脑要运行java 就需要安装JDK JRE : JAVA运行环境。 JVM :JAVA虚拟机。 是java程序真正运行到的位置 JDK包含JRE包含JVM 我们电脑首先安装了JDK 1.8。 java推出的时候 是 JDK1.0后来根据其他程序员的建议进行了改进 JDK1.1 1.2 1.3 当到了1.6过度到1.7的时候 发现变化特别大 就觉得小版本号不太合适 所以就更名为 JDK7 JDK8 JDK9 为什么我们还要用JDK8? 因为开发从来不敢上新 都是用稳定版
1.3 JAVASE和JAVAME和JAVAEE的区别(b)
javaSE: 使用java做桌面应用程序(java最不擅长的领域) javaEE: 使用java企业级应用程序(web网站项目) javaME: 使用java开发移动程序和嵌入式程序
1.4 JAVA的编译与运行 (B)
A 在D盘创建一个文件 Haha.txt B 里面写了 public class Haha {public static void main(String[] args){System.out.println("java第一个程序");} } 注意:1 大小写 2 标点符号 3 中英文 C 将Haha.txt后缀改成.java D 在地址栏 cmd 回车 E 将java的源代码编译成 字节码 javac Haha.java此时就会多一个文件 Haha.classF 运行 字节码文件到jvm虚拟机java Haha
1.5 JVM跨平台(B)
java执行: Xxxx.java源文件--javac编译--Xxxxx.class字节码文件--java运行--JVM虚拟机 反编译工具 JVM虚拟机,可以理解成模拟器。就好像我们的电脑没法安装手机软件,此时我们就可以安装一个模拟器 模拟器能在电脑上运行 并且能模拟手机运行环境 此时把手机软件安装到模拟器模拟出来的环境中 就好像手机软件在电脑中运行了 JVM虚拟机相当于在我们电脑中运行了一个虚拟环境 这个环境能运行 class字节码文件 (为什么安卓手机越用越卡 在手机中先要运行jvm虚拟机 在虚拟机中运行安卓app) 平台: Windows 平台 Mac平台 Linux平台 跨平台: 开发一个软件能在不同的平台中运行 一次开发 多处运行 java中为什么能跨平台: 我们只需要开发一套java写的程序 编译成字节码,然后在不同平台中安装不同的jvm虚拟机 此时我们的java字节码就可以在不同的平台运行
1.6 IDEA创建工程(b)
因为我们写代码的时候 每次都自己javac java太麻烦了A 创建工程file new project B 新工程内容.idea文件夹 .iml 配置文件不需要管 也不需要动src文件夹 这个文件夹是我们写代码的文件夹 也就是说 我们的代码写道src目录下C 创建一个package包包其实就是文件夹 但是在java中还有一层含义 用来区分不同代码的全限定名 选中src 右键new package 起名字 com.aaa.day01.test包名命名规范: 反域名 全小写com : cn org java com代表公司组织 这个代码受法律保护不能随便盗用 org代表公益组织 java 是官方源代码的报名aaa : 公司名称 day01: 项目名称test : 包的功能名称 com.alibaba.taobao.util 工具 com.alibaba.taobao.test 测试 D 创建源文件 Xxxx.java文件选中包 右键 new javaclass 起名字 Haha文件名有命名规范: 英文 有意义 大驼峰:首字母大写 如果有多个单词 每个单词的首字母都要大写
1.7 类中的内容
1 java中的注释注释就是非代码部分,对代码起到解释说明的作用,增强代码的可读性和可维护性所以我们要写注释// 单行注释 注释一行 函数内部使用 /* 多行注释 */ /** 文档注释 在类 函数 成员变量中使用 */ 源代码就是 ctrl+鼠标左键 包声明 表明当前文件所在的包 并且这是java代码的第一句 请问以下关键字 哪个是第一个出现的: A package B import C class D 其他 package com.aaa.day01.test; java类的声明 java中的代码都要写到类的classbody中 public 公共的 是java权限修饰符的一种 class 关键字 类声明的关键字 class代表的是声明类 abstract class 代表的是声明抽象类 interface 接口 enum 枚举@interface 注解 Haha 类名 {} classbody 修饰符 关键字 名字 {} public class Haha { }
1.8 类的约束(b)
请问 一个java 源文件中 可以有多少个类(外部类)? 有什么约束? 我们创建的Haha.java 是一个文件 称之为 源文件 ,此时里面写的代码 class Haha{} 代码中的类 只不过我们使用的是IDEA开发工具,当我们创建一个 源文件的时候 idea会自动的在文件中生成一个同名的公共类 A 可以有多个类 B 公共类的名字要和文件名相同 C 只能有一个是公共类
1.9 idea的智能纠错
点那个亮灯
1.10 main函数(b)
main函数称之为入口函数 基于c或者c++的程序 最开始执行的都是 入口函数 (我们的程序运行的时候 只认识 main函数) java是基于c++ 所以他也是从main函数开始运行 从今天开始我们要养成良好的代码习惯 首行索引规范 命名规范
JAVA学习 11.10相关推荐
- Java学习-11 XML与JSON
Java学习-11 XML与JSON 1.XML 1.1.简介 可扩展标记语言(eXtensible Markup Language). 特性:1. xml具有平台无关性, 是一门独立的标记语言.2. ...
- JAVA学习脚印10:解惑java 中UTF-16与char
JAVA学习脚印10:解惑java 中UTF-16与char java中的char.utf-16编码.代码点.代码单元等概念,做一个了解还是有必要的. 1.基本概念 1) Java的字符类型和字符串类 ...
- Java学习lesson 10
API(应用程序编程接口) * public final Class getClass();//返回Object的运行类(java的反射机制学) * Class类中有一个类 *public Str ...
- Java学习_Day 10(学习内容:尚硅谷集合JAVA零基础P523-P533)
P523 集合-使用Iterator遍历Collection package com.collection;import org.junit.Test;import java.util.ArrayLi ...
- Java学习笔记10
当程序创建对象.数组等引用类型实体时,系统都会在堆内存中为之分配一块内存区,对象就保存在这块内存区, 当我们创建的对象不再被引用时,所在的内存就变成了垃圾,最后等待垃圾回收机制进行回收,Java的垃圾 ...
- java学习(10):数据类型
对于java的数据类型,既熟悉又陌生,于是整理了这篇文档. 最近的面试让我开始注意细节,细节真的很重要. 首先,我们知道在JAVA中一共有八种基本数据类型,他们分别是 byte.short.int.l ...
- Java学习笔记10(面向对象三:接口)
接口: 暂时可以理解为是一种特殊的抽象类 接口是功能的集合,可以看作是一种数据类型,是比抽象类更抽象的"类" 接口只描述所应该具备的方法,并没有具体实现,具体实现由接口的实现类(相 ...
- Java学习笔记10(零压力理解继承多态权限修饰符)
文章目录 继承 方法的重写(override) 四种访问权限修饰符: 关键字super 类对象的实例化的底层原理 多态 instanceof操作符 object类 继承 继承是Java最重要的,类之间 ...
- 【Java学习】10入门篇之综合实战(对象、IO流、方法等)
问题描述:3v3游戏,每次开始游戏前先检查玩家列表,有过列表为空则向里面添加游戏玩家.游戏结束后,如果是新添加的游戏玩家,则写入到玩家列表当中,如果不是,结束操作. 创建游戏玩家对象: public ...
最新文章
- iOS黑科技之(CoreImage)静态人脸识别(一)
- python多久能上手_小白学习Python,怎样能够快速入门上手
- Java7 ConcurrentHashMap详解
- 物联网流行协议-MQTT
- 分治法与递归求科赫曲线
- 往届选手心得分享:腾讯广告算法大赛萌新指南
- ARIMA时间序列分析
- 【IOS-COCOS2D游戏开发之十九】游戏数据存储的四种常用方式NSKEYEDARCHIVER/NSUSERDEFAULTS/WRITE写入/SQLITE3...
- 如何用自己的笔记本电脑使用学校机房的千兆校园网
- Android游戏引擎汇总,android开发模拟器
- Maxwell原理与应用
- 微信小程序 时间插件 (可以选择日期+星期)
- cdr多页面排版_CDR文字排版实战图文教程,CorelDRAW文字排版有哪些技巧?
- PR2019 (五)几种视频转场特效
- 中国电信物联网平台入门学习笔记7:NB-IOT信号如何检测
- 泛微oa流程表单之HTML表单字段必填验证的添加与移除
- 编译QT项目出现错误:error C2144: syntax error : 'void' should be preceded by ';'
- 非常好用的一款在线json转excel的工具
- RRT算法(快速拓展随机树)的Python实现
- Android 天气APP(二十七)增加地图天气的逐小时天气、太阳和月亮数据