Java基础-学习笔记(一)

2023-11-09

1.IT业务的发展变化:

1)大型机(一代) IBM;

2)PC/Mac(二代) 微软 苹果;

3)互联网(三代)Google Baidu;

4)移动互联网  谷歌 微软 苹果;

所谓 移动互联网:移动通信 + 互联网;(马云所属:IT到DT的变化)

注:推荐本书吧《浪潮之巅》,感兴趣的同学可以读一下。

2.操作系统和平台相关性:

用户使用应用软件,应用软件基于操作系统,操作系统依赖于硬件;

OS(操作系统):管理和控制计算机硬件与软件资源的计算机程序。

系统分类:Unix家族 和 Windows家族;

平台:能支持程序运行的硬件或软件环境;

平台相关性:不同平台都有其特有的指令格式,也就是说windows支持的指令格式和Linux的指令格式是不一样的,进而导致的windows可执行文件不能在Linux平台上运行,把这种情况成为平台相关性。

3.Windows的快捷键和常用命令:

基本操作:

Win+D:显示桌面;

Win+R:打开运行窗口;

Win+L:锁屏;

Win+F:搜索(其他搜索工具Everything);

Win+R,输入cmd代开终端,输入相应的程序名,可以启动 C/user/system32目录下的一些可执行文件,如cale(打开记事本),notepad(打开记事本),mspaint(打开画图);

常用的命令:

切换盘符:d:  ;

返回根目录:cd\  ;

进入文件夹:cd  ;

清屏:cls  ;

返回上一级:cd..  ;

注:常用的linux命令,真的很需要学习,在ios开发过程中,尤其是一些软件配置都需要利用终端。

4.进制和数量级:

b:比特,二进制中的0和1,单个成为位(bit,记做b);

8个bit成为1个字节Byte(B);

千字节:1KB = 1024B = 2^10B;

兆字节:1MB = 1024KB;

吉字节:1GB = 1024MB;

太字节:1TB = 1024GB;

帕字节:1PB = 1024TB;

5.进制之间的转换计算:除基取余,方向写出(整数部分);

注:这一部分的内容在计算机组成原理中有详细的讲解,现在计算器这么强大了,谁还手算,了解即可。

6.原码、反码和补码:

所有的运算都是用补码做计算;

正数的原码、反码、补码都是正数本身;

负数原码:二进制表示时,最高位为符号位,0正1负,其余位表示数值的大小;

负数反码:除符号位外,其他位为对原码逐位取反;

负数补码:在其反码末位的+1;

7.计算机语言编程:机器语言、汇编语言、高级语言。

8.Java平台:

JavaSE:Java标准平台,允许开发和部署在桌面,服务器,嵌入式环境和实时环境中使用的Java应用程序,如桌面QQ,JavaSE能为JavaEE何JavaME提供开发的基础;

JavaEE:Java企业平台,帮助开发和部署可移植、健壮、可伸缩且安全的服务器端Java应用程序,如企业的应用系统ERP等,JavaEE是在JavaSE的基础上构建的,它提供web服务,组件模型,管理和通信API,可以用来实现企业级的面型服务体系结构SOA和web等应用程序。

JavaME:Java微型平台,也叫KJava,用来开发移动端设备和嵌入式设备、PDA电视机顶盒和打印机,应该会被Android逐渐取代。

9.Java语言是跨平台的,JVM不是跨平台的,当前Java8。

10.JRE:Java运行环境(包含JVM);JVM:Java虚拟机;

JDK:Java开发工具,包含开发Java程序的所有工具,如javac java等命令,包含JRE;

11.JDK安装路径,不要有中文,也不要有空格;

安装之后需要配置环境变量(路径);如果是Mac系统,安装JDK之后,在终端直接就可以调用javac,java等命令。

12.Java的编译和运行机制:

编写Java源代码(需要包含main方法,作为程序的入口)-javac编译-字节码文件(.class)-java运行命令,启动JVM,并加载字节码文件,执行文件无需带扩展名;

Java即是编译型语言,也是解释型语言。

13.Classpath:表示JVM到哪里去寻找class文件;

JVM默认当前路径寻找指定的字节码文件;

新建用户环境变量classpath,赋值为常用存储字节码文件的目录,这样在任意盘符都可以找到该目录下的字节码文件;

classpath值:“指定目录;.”,其中‘.’表示当前目录,这样设置之后,就既可以在指定目录下搜索字节码文件,又可以在当前目录下搜索,最新版本的JDK,关于classpath的设置有一些变化。

我们可以用javac -d 指定编译生成的字节码文件存放的位置。

14.Java语法:

1)严格区分大小写;

2)一个源文件中可以定义多个类,但最多只有一个类被定义为public权限的,而且源文件名称必须与该public类同名,多个类编译之后后生成多个字节码文件;

3)建议:一个文件中定义一个类;

15.Java中的三种注释:

单行注释://;

多行注释:/*   */;

文档注释:/**   */;

16.Java的关键字和保留字:都是小写的,保留字是没有功能的关键字;

Java没有sizeof,goto,const关键字,goto和const是Java的保留字。

17.语言分隔符和标识符:

1)‘;’用于一个语句结束;

2)标识符:字母 数字 下划线 $ ,数字不能开头;

3)不要使用API里的类名作为类名;

4)类名的首字母大写;









本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java基础-学习笔记(一) 的相关文章

随机推荐

  • Linux中桥接模式配置IP

    前言 本文主要介绍如何使用桥接模式配置IP 在使用虚拟机进行通信时 经常需要面临三种模式选择 不同模式之间配置不同 系统环境 CentOS 7 两种模式区别 NAT 虚拟机从属于主机 访问外部网络必须通过主机访问 虚拟机的IP只有主机才能识
  • 用DETR进行目标检测的predicat文件

    文章目录 前言 二 使用步骤 1 更改官方detr中308行的类别数 2 根目录加入检测文件 总结 前言 由于最近研究DETR目标检测 但是发现官方给的代码缺少了predict文件 于是自己写了一个 但是写代码的过程中也想到了一些问题 比如
  • QT QPushButton点击事件的实现

    最近需要对按钮实现效果 当鼠标按下时按钮有效果1 然后鼠标松开时按钮有效果2 分析 这里没有现成的信号可以使用 需要重载mousePressEvent 及 mouseReleaseEvent 事件函数 在mouseReleaseEvent
  • 技术笔记

    https docs qq com doc DUVBFRUNvUW1SUXB5
  • js模仿f11全屏_js触发f11全屏

    document on keydown function e var e event window event arguments callee caller arguments 0 if e e keyCode 122 捕捉F11键盘动作
  • 【CSS】css样式控制div水平垂直居中的六种方法

    1 绝对定位方法 不确定当前div的宽度和高度 采用 transform translate 50 50 当前div的父级添加相对定位 position relative 如图所示 代码如下 div background red posit
  • grep、sed、awk、perl等对正则表达式的支持的差别

    以perl的正则为基准 不同的用法以粉红色标出 因为spacemacs支持vim正则表达式操作 而且能够实时显示匹配内容和替换结果 可以作为perl脚本的正则表达式debug手段 转载来自 grep sed awk perl等对正则表达式的
  • Qt:信号和槽总结(1,C++11下的信号和槽 2,第五个参数 3,阻塞 )

    Qt 信号和槽总结 1 C 11下的信号和槽 2 第五个参数 3 阻塞 信号和槽是Qt特有的一种通讯方法 具有以下特点 信号与槽的连接比较灵活 可以一对一 一对多或者是多对一 信号与槽的绑定与解除也十分的灵活 使用connect以及disc
  • CONTAINING_RECORD宏原理与使用详解

    先不急着说CONTAINING RECORD宏 我们从最浅显的代码开始讲解 一 0指针的妙用 0指针 即nullptr NULL 空指针 是不是很常见 一遇到它往往就是segment fault 代码 如下 struct Test int
  • Vue实现Alert插件

    实现alert插件 在Vue中我们可以使用 Vue component tagName options 进行全局注册 也可以是在组件内部使用 components 选项进行局部组件的注册 全局组件是挂载在 Vue options compo
  • python的with关键字

    前言 with表达式其实是try finally的简写形式 但是又不是全相同 格式 格式 with context as var pass 其中的context是一个表达式 返回的是一个对象 var用来保存context表达式返回的对象 可
  • git pull: Please commit your changes or stash them before you merge

    参考 Git冲突 commit your changes or stash them before you can merge 总结 如果git pull 报错 Please commit your changes or stash the
  • Hyperledger Fabric能否大规模运行?

    我很高兴回答这个问题 简短的回答是 是的 确实如此 我的疑问 我对大规模Hyperledger Fabric Fabric 的性能提出了很多疑问 很多时候 人们已经完成了一些 或阅读 听说过 性能测试 比如在他们的笔记本电脑或早期版本的Fa
  • Android 使用 Jenkins 实现自动化打包【流程】&【踩坑】

    引言 每个Android开发应该都有经历过正在码代码的时候突然被打断要求打个啥啥环境啥啥配置的安装包 然后就得暂存代码 切换分支 更改配置 等待build balabala 往大了说就是浪费时间消耗员工价值对公司的不负责 胡扯 往小了说就是
  • 在复苏与重塑之路上,同程旅行为旅游业价值回归交出答卷

    若论对疫情感受最深刻的行业 旅游业必然榜上有名 也许这个产业链上的每个玩家在这两年都思考过这样两个问题 客观上 旅游业恢复的基础条件有哪些 主观上 又该用什么措施 什么方法应对现在的局面 尽管疫情影响仍未消散 但11月以来 从防疫新提法到文
  • PostgreSQL pg中的截取补齐lpad函数怎么用?

    PostgreSQL pg中的截取补齐lpad函数怎么用 1 左边填充 右边截取 PostgreSQL中的lpad 函数有两个功能 如果长度不够指定的长度 就在左边填充字符串 如果长度超出了指定的长度 就把右边截掉 The PostgreS
  • 使用matplotlib绘制饼图

    根据消费类别 如外卖 零食 衣服 娱乐等 使用matplotlib绘制本月的消费支出饼图 以代码插入方式提交源代码 并以图像文件提交运行截图 python代码 import matplotlib pyplot as plt from pyl
  • 60分钟学pytorch

    本文会持续更新 直至完成pytorch中的60分入门文档部分 目前为tensor的基础操作部分 本文代码github https github com amazingzby pytorch tutorial pytorch官方文档给初学者提
  • ui(new Ui::MainWindow)

    用最新的QtCreator选择GUI的应用会产生含有如下文件的工程 下面就简单分析下各部分的功能 pro文件是供qmake使用的文件 不是本文的重点 不过其实也很简单的 在此不多赘述 所以呢 还是从main开始 include
  • Java基础-学习笔记(一)

    1 IT业务的发展变化 1 大型机 一代 IBM 2 PC Mac 二代 微软 苹果 3 互联网 三代 Google Baidu 4 移动互联网 谷歌 微软 苹果 所谓 移动互联网 移动通信 互联网 马云所属 IT到DT的变化 注 推荐本书