java的优势?
1:跨平台[平台:指的是操作系统] ****
常见的操作系统:Windows Unix Linus Solaris[Sun -> java]
跨平台:用java开发的应用程序 不受底层操作系统的限制
底层的功臣:
java虚拟机 = JVM = 1 + 2 + 3
= 秘书 + 保镖 + 翻译
= 秘书 :类加载器 = ClassLoader
= 保镖 :字节码校验器 = ByteCode Verifier
= 翻译 :解释执行器 = Interfreter
2:安全 健壮
像是电力、电信、银行的项目优先考虑使用java实现的
安全性体现在:
- 少指针的概念
- 多自动的垃圾回收机制 -> gc
- 多了异常的概念
3:免费 开源
4:简单
语法简单:c++-- [取其精华 去其糟粕]
糟粕:指针 手动的垃圾回收
运算符重载
思想简单:面向对象的思想 = oo【Object Oriented】思想 *****
面向过程的思想:需要人站在计算机的角度去思考问题
面向对象的思想:需要拿着代码模拟现实生活
类:一组类型相同事物高度抽象之后的集合概念
创建对象的模板
对象:类的一个具体的实例
范冰冰和人之间的关系:对象和类
猫和HelloKitty之间的关系:类和对象
引用:对象的名字
当我们创建对象的时候 可以同时起多个名字但是如果一个对象一个名字都没有的话会被gc回收掉 -》 零引用内存回收
属性:对象有什么
方法:对象会什么
5:动态更新
对于核心类库里面提供的一些核心方法值保留指向关系
当若干年后 核心类库升级了我们的程序还是可以正常使用这是挤兑c/c++的
搭建开发环境:
1:安装jdk
SDK = software development kits = 软件开发工具包【目录】
JDK = java + SDK = java软件开发工具包
jdk版本:
jdk1.5.0 jdk1.6.0 jdk1.7.0....
jdk5.0 jdk6.0 jdk7.0
Tiger Mustang Dolphin
老虎 野马 海豚
路虎 悍马 ....
JRE = java runtime environment = java运行环境
组成关系:
JVM = 类加载器 + 字节码校验器 + 解释执行器
JRE = JVM + API(核心类库编程接口)
JDK = JRE + BIN(常用的工具命令 -》 javac/java)
面试题:
JDK和JRE之间的区别?
1:分别表示的含义不同
JDK:java软件开发工具包
JRE:java运行环境
2:作用不同
JDK:如果电脑上安装jdk之后 既可以
编写代码 又可以运行程序
JRE:如果电脑上安装jre之后
只能运行程序