java学习(二)基础概念、语法
对象
类的实例(通俗点讲,new出来的玩意好像都是对象?初学者的感觉,不造对错啊,有大神给我解释下可以啊)
类
class嘛,模板嘛,可以给对象实例的嘛
方法
行为,学编程的,方法,这玩意心里都懂吧,用前端的话,function嘛
实例变量
每个对象都有独特的实例变量,对象的状态由这些实例变量的值决定。
(实例嘛就是对象嘛,就是对象的变量嘛)
语法
类名首字母大写,多个单词每个单词都首字母大写
方法名首字母小写,多个单词除了首字母其他单词首字母大写
大小写区分
所有的Java 程序由public static void main(String []args)方法开始执行。(每个程序有个main方法嘛,理解理解)
修饰符
- 访问控制修饰符 : default, public , protected, private
- 非访问控制修饰符 : final, abstract, strictfp
(就知道public 公有的,private私有的,protected被保护的,用法用途之类还需要学习,不懂)
关键字
好像很多,自己看了一遍,估摸着记不住,放个表,以后没事看看
| 关键字 | 描述 |
|---|---|
| abstract | 抽象方法,抽象类的修饰符 |
| assert | 断言条件是否满足 |
| boolean | 布尔数据类型 |
| break | 跳出循环或者label代码段 |
| byte | 8-bit 有符号数据类型 |
| case | switch语句的一个条件 |
| catch | 和try搭配扑捉异常信息 |
| char | 16-bit Unicode字符数据类型 |
| class | 定义类 |
| const | 未使用 |
| continue | 不执行循环体剩余部分 |
| default | switch语句中的默认分支 |
| do | 循环语句,循环体至少会执行一次 |
| double | 64-bit双精度浮点数 |
| else | if条件不成立时执行的分支 |
| enum | 枚举类型 |
| extends | 表示一个类是另一个类的子类 |
| final | 表示一个值在初始化之后就不能再改变了 表示方法不能被重写,或者一个类不能有子类 |
| finally | 为了完成执行的代码而设计的,主要是为了程序的健壮性和完整性,无论有没有异常发生都执行代码。 |
| float | 32-bit单精度浮点数 |
| for | for循环语句 |
| goto | 未使用 |
| if | 条件语句 |
| implements | 表示一个类实现了接口 |
| import | 导入类 |
| instanceof | 测试一个对象是否是某个类的实例 |
| int | 32位整型数 |
| interface | 接口,一种抽象的类型,仅有方法和常量的定义 |
| long | 64位整型数 |
| native | 表示方法用非java代码实现 |
| new | 分配新的类实例 |
| package | 一系列相关类组成一个包 |
| private | 表示私有字段,或者方法等,只能从类内部访问 |
| protected | 表示字段只能通过类或者其子类访问 子类或者在同一个包内的其他类 |
| public | 表示共有属性或者方法 |
| return | 方法返回值 |
| short | 16位数字 |
| static | 表示在类级别定义,所有实例共享的 |
| strictfp | 浮点数比较使用严格的规则 |
| super | 表示基类 |
| switch | 选择语句 |
| synchronized | 表示同一时间只能由一个线程访问的代码块 |
| this | 表示调用当前实例 或者调用另一个构造函数 |
| throw | 抛出异常 |
| throws | 定义方法可能抛出的异常 |
| transient | 修饰不要序列化的字段 |
| try | 表示代码块要做异常处理或者和finally配合表示是否抛出异常都执行finally中的代码 |
| void | 标记方法不返回任何值 |
| volatile | 标记字段可能会被多个线程同时访问,而不做同步 |
| while | while循环 |
java包
用来对类和接口进行分类(当开发Java程序时,可能编写成百上千的类,因此很有必要对类和接口进行分类)
import
感觉就是引用其他的包嘛,内置的或者自己写的那些类
在Java中,如果给出一个完整的限定名,包括包名、类名,那么Java编译器就可以很容易地定位到源代码或者类。Import语句就是用来提供一个合理的路径,使得编译器可以找到某个类。(这个是别人写的专业的,不过我感觉我理解的应该是一个意思,只不过好像import的是路径,这个我在之后注意注意,确定下到底怎么搞)
java因强制要求类名(唯一的public类)和文件名统一,因此在引用其它类时无需显式声明。在编译时,编译器会根据类名去寻找同名文件
(别人的笔记,感觉挺有道理)
基本数据类型
变量就是申请内存来存储值。也就是说,当创建变量的时候,需要在内存中申请空间。
内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据。
Java 的两大数据类型:
- 内置数据类型
- 引用数据类型
内置数据类型
内置:byte,short,int,long,float,double,boolean,char
(byte是8位、有符号的,以二进制补码表示的整数,-128~127,default 0,byte 类型用在大型数组中节约空间,主要代替整数,因为 byte 变量占用的空间只有 int 类型的四分之一)
(short -32768~32767,-2^15~2^15-1,16 位)
(int -2,147,483,648(-2^31)~2,147,483,647(2^31 - 1),32位)
(long -9,223,372,036,854,775,808(-2^63)~9,223,372,036,854,775,807(2^63-1),64位,default 0L)
(char 单一的 16 位 Unicode 字符 \u0000~\uffff)
马丹,我纠结了一下这个位是啥意思,结果发现,就是字面意思,位数,就是说boolean类型的永远是true or false 那就是1位
引用数据类型
比方说自己定义的一个类的实例
比方说数组
default null
常量
final double PI = 3.1415927;
final关键字修饰
类型转化
整型、实型(常量)、字符型数据可以混合运算。运算中,不同类型的数据先转化为同一类型,然后进行运算。
转换从低级到高级。
低 ------------------------------------> 高 byte,short,char—> int —> long—> float —> double 这些类型转化相关,只粗略了解了一点,以后用到了,再洗研究,现在研究的太多也不会
暂时总结了一些概念性的,后面再补充吧,毕竟一点点积累
java学习(二)基础概念、语法的更多相关文章
- Java学习:二 基础
2014 - 5 - 22 上午 Java对大小写敏感. 点号(.)用于调用方法,Java的能用语法是: object.method(parameters); Java中的常量声明使用fina ...
- Java并发(二):基础概念
并发编程的第二部分,先来谈谈发布(Publish)与逸出(Escape); 发布是指:对象能够在当前作用域之外的代码中使用,例如:将对象的引用传递到其他类的方法中,对象的引用保存在其他类可以访问的地方 ...
- Java基础概念语法
Java基础概念语法 注释 单行注释 //行注释说明 多行注释 /* 多行注释说明 */ 文档注释 /** *@author 程序的作者 *@version 源文件的版本 *@param 方法的参数说 ...
- Office·Word高级·VBA基础概念语法
阅文时长 | 5.21分钟 字数统计 | 1823字符 『Office·Word高级·VBA基础概念语法』 编写人 | SCscHero 编写时间 | Monday, June 29, 2020 文章 ...
- Java基础学习之基础概念与环境搭建(1)
1.Java基础概念 1.1.Java语言的特点 Java语言是简单易学的 Java语言是面向对象(封装.继承和多态) Java语言是平台无关的(一次编译,到处运行) Java语言是可靠的.安全的(异 ...
- Java学习笔记-基础语法Ⅳ
多态:同一个对象,在不同时刻表现出来的不同形态 例如: 猫 cat = new 猫(); 动物 animal = new 猫(); 这里的猫在不同时刻表现出来不同的形态,这就是多态 多态的前提和体现: ...
- lua学习之基础概念篇
基础概念 程序块 (chunk) 定义 lua 中的每一个源代码文件或在交互模式(Cmd)中输入的一行代码都称之为程序块 一个程序块就是一连串语句或者命令 lua 中连续的语句不需要分隔符,但为了可读 ...
- Java学习日记——基础篇(二)基本语法
变量 变量和常量是程序处理的两种基本数据对象,变量是程序的基本组成单位 变量的目的就是确定目标并提供存放空间 public class Hello { public static void main( ...
- JAVA学习总结-基础语法
/** * 这篇文章供自己学习JAVA总结回顾使用 * 主要借鉴了马士兵老师的视频进行总结 * @author Kingram */ 标识符的概念和命名规则 JAVA常量---不可变的变量 程序的执行 ...
- Java学习笔记-基础语法
Java基础包含关键字,标识符,注释,常量和变量,运算符 关键字 关键字的定义和特点 定义:被Java语言赋予了特殊含义的单词 特点:关键字中所有字母都为小写 Java的关键字 用于定义数据类型的关键 ...
随机推荐
- ZT eoe android4.2 Bluetooth记录01-结构和代码分布
android4.2 Bluetooth记录01-结构和代码分布 作者:cnhua5更新于 08月21日访问(697)评论(2) 在android4.2中,Google更换了android的蓝牙协议栈 ...
- Mac环境下WingIDE切换python版本
https://www.cnblogs.com/fastLearn/p/6514442.html
- React onPaste 获取粘贴板的值
React 中, 获取 粘贴板的值, 使用下面的方法 console.log(e.clipboardData.getData('Text')); 如果是 JS 中的 onpaste 事件, 则使用 v ...
- ajax跨域请求在IE8中存在的问题
从没打算怎么去兼容老版本IE,毕竟微软自己都放弃了,可是最近做好的东西在所有的IE下都会出问题:GetJson不执行 本来觉得挺简单的,度娘也给出了一大堆的解决方案,可惜,基本上都是在说缓存,实际上并 ...
- 【原创】MySQL 生产环境备份还原
公司需要对生产环境的数据库进行备份,我接下了这份任务. 1. 首先谷歌了以下大家的备份方法 许多都使用到了Xtrabackup这个工具,超大型的公司可能有其他的的备份方法,这个工具对于中小型公司,甚至 ...
- Spring-IOC MethodInvokingFactoryBean 类源码解析
MethodInvokingFactoryBean MethodInvokingFactoryBean的作用是,通过定义类和它的方法,然后生成的bean是这个方法的返回值,即可以注入方法返回值. Me ...
- Hive学习之路 (十四)Hive分析窗口函数(二) NTILE,ROW_NUMBER,RANK,DENSE_RANK
概述 本文中介绍前几个序列函数,NTILE,ROW_NUMBER,RANK,DENSE_RANK,下面会一一解释各自的用途. 注意: 序列函数不支持WINDOW子句.(ROWS BETWEEN) 数据 ...
- pandas数据结构:Series/DataFrame;python函数:range/arange
1. Series Series 是一个类数组的数据结构,同时带有标签(lable)或者说索引(index). 1.1 下边生成一个最简单的Series对象,因为没有给Series指定索引,所以此时会 ...
- LeetCode429. N-ary Tree Level Order Traversal
题目来源:429. N-ary Tree Level Order Traversal https://leetcode.com/problems/n-ary-tree-level-order-trav ...
- linux文件系统初始化过程(1)---概述
术语表: struct task:进程 struct mnt_namespace:命名空间 struct mount:挂载点 struct vfsmount:挂载项 struct file:文件 st ...