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的关键字 用于定义数据类型的关键 ...
随机推荐
- 硬盘上的一些算法小题目||and今天看了下林锐的书以及gdb调试 及一些变成算法小题目
gdb调试:观察点,断点,事件捕捉点.step 进入函数,next 跳过函数,until 跳出循环,finish 结束函数 林锐:书后试题 & c++的对象模型图 看了二叉树的非递归遍历, 链 ...
- 利用skipList(跳表)来实现排序(待补充)
用于排名的数据结构 一般排序为利用堆排序(二叉树)和利用skipList(跳表)的方式 redis中SortedSet利用skipList(跳表)来实现排序,复杂度为O(logn),利用空间换时间,类 ...
- PHP设计模式系列 - 迭代器
PHP迭代器: 可帮助构造特定的对象,那些对象能够提供单一标准接口循环或迭代任何类型的可计数数据.(不是特别常用,在PHP中) 使用场景: 1.访问一个聚合对象的内容而无需暴露它的内部表示. 2.支持 ...
- 使用Oracle的instr函数与索引配合提高模糊查询的效率
使用Oracle的instr函数与索引配合提高模糊查询的效率 一般来说,在Oracle数据库中,我们对tb表的name字段进行模糊查询会采用下面两种方式:1.select * from tb wher ...
- JavaScript的DOM操作获取元素的大小
通过 style 内联获取元素的大小 需要注意的是style 获取只能获取到行内 style 属性的 CSS 样式中的宽和高,如果有获取:如果没有则返回空. <!DOCTYPE html> ...
- 51nod 1444 破坏道路(bfs+枚举)
1444 破坏道路 题目来源: CodeForces 基准时间限制:1.5 秒 空间限制:131072 KB 分值: 80 难度:5级算法题 收藏 关注 在某一个国家,那儿有n个城市,他们通过m条双向 ...
- php基础学习-sdy
1.php语言结构和函数 exit()和die() exit()相当于把下面的代码都注释了 die()终止脚本 两个差不多 函数有很多种 (1)语言结构 (2)自定义函数 (3)内置函数 functi ...
- Windows下docker的安装,将ASP.NET Core程序部署在Linux和Docker中
参考文章: https://www.cnblogs.com/jRoger/p/aspnet-core-deploy-to-docker.html docker for windows下载连接: htt ...
- 多线程之ThreadLocal(转)
相信读者在网上也看了很多关于ThreadLocal的资料,很多博客都这样说:ThreadLocal为解决多线程程序的并发问题提供了一种新的思路:ThreadLocal的目的是为了解决多线程访问资源时的 ...
- 解决:在pom.xml处理添加testng依赖之外,需对testng进行关联
问题描述:当maven项目中下载了testng包,在调用后,执行maven test,未执行testng.xml中指定的测试类. 解决:在pom.xml处理添加testng依赖之外,需对testng进 ...