Java学习日记1——基础认知

学习Java阶段,如果发现不正确的描述,还请指正!

首先附上Java相关下载链接和配置教程链接
Java相关软件工具下载地址:官方下载
Java环境配置(win10配置JDK1.8):配置教程

Java的三大平台认识:
 Java SE(标准版)——适用于桌面应用
 Java EE(企业版)——适用于网络应用
 Java ME(微型版)——适用于移动端应用

Java语言的特点
面向对象的编程语言:
 1.面向对象的方法主要是把事物给对象化,包括其属性和行为。面向对象编程更贴近实际生活的思想。总体来说面向对象的底层还是面向过程,面向过程抽象成类,然后封装,方便使用就是面向对象(万物皆对象)。简单理解为,面向对象即是把所有的函数、方法、变量都定义在对象里面。
 2.Java编译后可以跨平台运行:
Java语言经过编译后,可以运行到不同的平台上,例如Windows和Linux等
 3.支持多线程:
可以实现多个线程同时执行多个任务
 4.丰富的库类:
丰富的库提供了大量的类,可以直接调用
 5.语法结构类似于c++
 6.Java语法十分简单

Java与C++的主要区别
Java是在C++上的基础上发展起来的,删除了C++不好用和不常用或者易出错的内容,比如
 1.删除了指针操作(实际上是有的,只不过不向编程者提供)
 2.自动的内存管理机制(不用手动删除),不容易和C++一样导致内存溢出,
 3.数据类型的长度固定,在跨平台上进行的要求,跨平台也是固定的
 4.不使用头文件,自动检查定义,减少复杂度
 5.不包含结构和联合
 6.不支持宏
 7.不用多重继承,相比于C++ 的多重继承,更加简单,使用接口解决
 8.没有类外的全局变量
 9.无GOTO
总的来说,Java是C++为基础发展起来的,也可以成为C++ --,删繁就简并且对于复杂必要的操作提供新的解决方案。

Java的执行结构

 1.因为Java是C++的衍生语言,所以编译的命名为javac
 2.class文件是与平台无关的字节码文件
 3.Java程序的执行是依靠JVM虚拟机进行的
 所以配置完成Java运行环境后,在cmd窗口执行Java成源代码时,首先需要执行javac命令,将其编译为.class文件,再使用Java命令执行.class文件。

Java运行环境JRE
Java运行环境的组成:JRE=JVM+API(lib)JRE = JVM +API(lib)JRE=JVM+API(lib)
 运行环境是虚拟机加上已经提供的API函数库。运行结构就是用虚拟机装载程序,然后调用相应的集成API进行运行。

Java具有自动垃圾回收
 1.系统级线程跟踪存储空间的分配情况
 2.在JVM空闲时,检查并释放可被释放的存储器空间
 3.程序员无法精确控制和干扰垃圾释放,大大减小程序员工作量

Java工具包JDK——Java Development Kit
JDK的组成形式:JDK=JRE+ToolsJDK = JRE + ToolsJDK=JRE+Tools

JDK提供的工具包,主要包含:
 1.Java编译器 javac.exe
 2.Java执行器 java.exe
 3.文档生成器 javadoc.exe
 4.Java打包器 jar.exe
 5.Java调试器 jdb.exe

Java学习日记1——基础认知相关推荐

  1. Java学习日记-Day01

    Java学习日记-Day01 Java语言概述 比特(byte)与字节 内存 Java基础知识图解 人机交互方式 常用的DOS命令 常用快捷键 计算机编程语言介绍 第一代语言 第二代语言 第三代语言 ...

  2. Java学习07–前端基础之CSS

    Java学习07–CSS基础 1.CSS介绍 1.1.发展史 css1.0 基本 css2.0 div(块)+css html与css结构分离的思想网页变简单 css2.1 浮动,定位 css3.0 ...

  3. Python学习日记-day1基础篇 字符 输出 注释

    Python学习日记-day1基础篇 字符 输出 注释 by北栀一刺 # -*- coding: utf-8 -*- """ Spyder EditorThis is a ...

  4. Java学习---Day16_IO流基础篇

    Java学习-Day16_IO流基础篇 文件操作 操作磁盘上的某一个文件或某一个文件夹,可以对他们进行创建或删除.移动.属性获取.属性设置等操作.但是,不包含读取文件的内容.拷贝文件 ps:java中 ...

  5. Java学习笔记之基础篇

    Java学习笔记之基础篇 目录 Java如何体现平台的无关性? 面向对象(OO)的理解 面向对象和面向过程编程的区别 面向对象三大特征 静态绑定和动态绑定(后期绑定) 延伸:类之间的关系 组合(聚合) ...

  6. Java学习路线-夯实基础

    Java学习路线-夯实基础 第一部分:网络与操作系统 第二部分:数据结构与算法 第三部分:Java基础 第四部分:Java设计模式 第五部分:数据库 第六部分:Redis 第七部分:并发与多线程 第八 ...

  7. 尚学堂Java学习日记Day3

    尚学堂Java学习日记Day3 第三天老师先回顾了昨天的内容我从回顾中掌握了新的知识 如下图所示 int与double计算,输出类型为double的不同结果 会把int转成double类型的,这是隐式 ...

  8. invader的java学习第一天基础篇

    invader的java学习第一天基础篇 一.java主要历史 ①java是Sun公司的产品,09年被Oracle公司收购. ②java语言之父:詹姆士高斯林 二.jdk.jre.jvm三者关系 jd ...

  9. invader的java学习第二天基础篇

    invader的java学习第二天基础篇 一.深入了解第一个Hello World程序 public class Hello World{ public static void main(String ...

最新文章

  1. restful可以转发么_什么是RESTFUL?REST的请求方法有哪些,有什么区别?
  2. 工具箱 - Putty 安装调试3
  3. LeetCode 264. 丑数 II
  4. Java学习小程序(6)随机加法运算器
  5. 3种常见的Class级别的错误
  6. LeetCode:892. 三维形体的表面积
  7. 为什么脚本执行一行就不动了_在Linux中通过expect工具实现脚本的自动交互
  8. 应用安全-CMF/CMS漏洞整理
  9. keil5安装教程简单易上手
  10. c语言中xml的解析方式,浅谈Xml的三种解析方式
  11. 高中数学基础-1.2.2函数的表示法(上):解析法、列表法、图形法
  12. SAP会计科目表(Charts of Accounts)
  13. Java+PDFBox将PDF转成图片
  14. fastLane 初试
  15. android edittext numberdecimal,android – 如何在“手机”软键盘上使用InputType = numberDecimal?...
  16. 全志D1-H芯片 如何在tina使用tplayerdemo 进行rtsp拉流说明?
  17. 如何分析个股基本面_如何分析股票基本面
  18. MATLAB | 一起来感受数学之美,第一届迷你黑客大赛回顾
  19. JPA 2.1: Bulk Update and Delete
  20. ASEMI整流桥GBJ406参数,GBJ406尺寸,GBJ406机械数据

热门文章

  1. html文字用竖线隔开,inline+padding技巧:间隔符(分割线)与文字高度不一致,间隔竖线高度缩短方法...
  2. ctf赛题上传一个php木马,从一道CTF题学习PHP反序列化漏洞
  3. 我的Web安全学习之路
  4. Android12之OpenSL ES基础数据结构总结(十)
  5. 路由器或交换机密码忘了——带你修改路由器+交换机密码
  6. 华为在高端手机市场首尝被小米击败的滋味,这是一个信号
  7. 选择防身武器,利用身边的物品才是王道
  8. D3 二维图表的绘制系列(二十三)旭日图
  9. windows中安装绿色版的mysql
  10. XTUOJ-1293-Diamond