java基础语句_【Java基础-Java语言基础】

知识点:1.关键字  2.标识符  3.变量和常量

一、关键字

1.Java中的关键字有很多一共53个关键字有两个是保留字(java的关键字都是小写的!!)

2.Java中的保留字

(1)const  常量,数量

(2)goto   转到

3.Java的关键字

(1)访问修饰符的关键字(共3个)

关键字

意思

备注,常用

public

公有的

可跨包,(默认选择)

protected

受保护的

当前包内可用

private

私有的

当前类可用

(2)定义类、接口、抽象类和实现接口、继承类的关键字、实例化对象(共6个)

39deaba82de7cd88bbd9489826361da6.png

(3)包的关键字(共2个)

d5013996070ac86d7ed2157ae42ba06c.png

(4)数据类型的关键字(共12个)

4c1db995f84e5d84e8908d79912f6378.png

(5)条件循环(流程控制)(共12个)

ce132f2093ac8cb67df89182b5a737f3.png

(6)修饰方法、类、属性和变量(共9个)

e04d7c8db175d4d0542538cdbd3340c4.png

static 例子:

public class Test{

class A{} //内部类

ActionListener al=new ActionListener(···){} //匿名内部类

}

静态块优先于其他方法/类的执行

(7)错误处理(共5个)

98c014ed0014449239a436ad67c8e398.png

throw是你执行的动作。比如你觉得可能有异常,那么就抱出去 如:

String a; if(a == null),

throw new exception("a为null");

所以throw是一个抛出去的动作

throws只用在一个方法的末端,表示这个方法体内部如果有异常,这抛给它的调用者。 如: public void add(int a, int b) throws Exception(); 这个方法表示,在执行这个方法的时候,可能产生一个异常,如果产生异常了,那么谁调用了这个方法,就抛给谁。(来自百度)

(8)不知道是什么(共2个)

c6b29c9efcd3dfbfb25c7635f2c3c556.png

Enum:代表一组常用常量,可用来代表一类相同类型的常量值如:

性别:

public enum SexEnum {

male, female;

}

颜色:

public enum Color {

RED, BLUE,GREEN,BLACK;

}

枚举对象里面的值都必须是唯一的。

附:throw 和throws的差别

区别一:

throw 是语句抛出一个异常;throws 是方法抛出一个异常;

throw语法:throw 

在方法声明中,添加throws子句表示该方法将抛出异常。

throws语法:[]([])[throws]

其中:异常类可以声明多个,用逗号分割。

区别二:

throws可以单独使用,但throw不能;

区别三:

throw要么和try-catch-finally语句配套使用,要么与throws配套使用。但throws可以单独使用,然后再由处理异常的方法捕获。

throws E1,E2,E3 只是告诉程序这个方法可能会抛出这些个异常,方法的调用者可能要处理这些异常。而这些异常E1,E2,E3可能是该函数体产生的。

而throw是明确之处这个地方要抛出这个异常。

void doA() throws Exception1, Exception3 {

try {

……

} catch(Exception1 e) {

throw e;

} catch(Exception2 e) {

System.out.println("出错了");

}

if (a != b)

throw new Exception3("自定义异常");

}

代码块……中可能产生异常Exception1、Exception2和Exception3。

如果产生Exception1异常,则捕捉了之后抛出由该方法的调用者去做处理;

如果产生Exception2异常,则该方法自己做了处理(打印出了说出错了),所以该方法就不会再向外抛出Exception2异常了,void doA() throws Exception1,,Excpetion3里面的Exception2也就不用写了;

而Exception3异常是该方法的某段逻辑出错,程序员自己作了处理在该段逻辑错误的情况下抛出异常Exception3,则调用者也需要处理。

throw语句用在方法体内,表示抛出异常,由方法体内的语句处理

throws语句用在方法声明后面,表示再抛出异常,由调用这个方法的上一级方法中的语句来处理

throws主要是声明这个方法会抛出这种类型的异常,使其他地方调用它时知道要捕获这个异常。

throw是具体向外抛异常的动作,所以它是抛出一个异常实例。

throws说明你有哪个可能,倾向

throw的话,那就是你把那个倾向变成真实的了

同时:

1)throws出现在方法函数头;而throw出现在函数体;

2)throws表示出现异常的一种可能性,并不一定会发生这些异常;throw则是抛出了异常,执行throw则一定抛出了某种异常;

3)两者都是消极处理异常的方式(这里的消极并不是说这种方式不好),只是抛出或者可能抛出异常,但是不会由函数去处理异常,真正的处理异常由函数的上层调用处理。

二、标识符

标识符就是用于给 Java 程序中变量、类、方法等命名的符号。例:

b8934cc04eea7d0d30432a4332c8f231.png

使用标识符时,需要遵守几条规则:

1.  标识符可以由字母、数字、下划线(_)、美元符($)组成,但不能包含 @、%、空格等其它特殊字符,不能以数字开头。譬如:123name 就是不合法滴

2.  标识符不能是 Java 关键字和保留字( Java 预留的关键字,以后的升级版本中有可能作为关键字),但可以包含关键字和保留字。如:不可以使用 void 作为标识符,但是 Myvoid 可以

3.  标识符是严格区分大小写的。 所以涅,一定要分清楚 imooc 和 IMooc 是两个不同的标识符哦!

4.  标识符的命名最好能反映出其作用,做到见名知意

三、变量和常量

3.1 定义变量

变量名称由字母、数字、下划线(_)、美元符($)组成,但是不包括@、%、空格等,但是开头不能为数字。

变量的一些命名原则:

1.变量由多个单词组成时,第一个单词首字母小写,其后单词首字母大写,即驼峰式命名

2.变量命名时应该顾名思义,同时应该尽量简短

ps:Java中是区分大小写的,但是没有长度限制

3.2 数据类型

Java中数据类型包括基本数据类型和引用数据类型;基本数据类型存储数据本身,而引用数据类型则存储数据的地址。引用数据类型包括类、数据、接口,而引用数据类型包括数值型、字符型、布尔型。

数据类型说明字节    应用

int整型4存储整数

float单精度浮点型4存储小数

double双精度浮点型  8存储小数

char字符型2存储一个字符,用‘ ’表示

boolean布尔型1表示真假,只有ture或false

java 中 float 与 double 的区别java中默认声明的小数是double类型的,如double d=4.0如果声明: float x = 4.0则会报错,需要如下写法:float x = 4.0f或者float x = (float)4.0其中4.0f后面的f只是为了区别double,并不代表任何数字上的意义对编程人员而言,double 和 float 的区别是double精度高,但double消耗内存是float的两倍,且double的运算速度较float稍慢。java中的整数默认类型为int类型(占

内存32位),而float32位,16.0在float表示范围内,所以int类型可以向float类型转换;而java中小数默认类型是double,它不能向低位数的数据类型转换,否则受损。

3.3 自动类型转换和强制类型转换

1.目标类型能与源类型兼容,如 double 型兼容 int 型,但是char 型不能兼容int 型

2.目标类型大于源类型,如 double 类型长度为 8 字节,int 类型为4 字节,因此double 类型的变量里直接可以存放int 类型的数据,但反过来就不可以了

强制类型转换

double one = 12.6;

int another = (int)one;

常量

它的值被设定后,在程序运行过程中不允许改变。

语法:final 常量名 = 值

常量名一般使用大写字符

final int SCORE = 100;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/467533.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

安卓9.0Sensor框架

前言本来如果只是给传感器写个驱动并提供能读取温湿度数据的节点,是一件比较轻松的事情,但是最近上层应用的同事要求我们按照安卓标准的流程来,这样他们就能通过注册一个服务直接读取传感器事件数据了。这样做的好处就是第三方的应用也能正常…

Theano 更多示例

Logistic函数 logistic函数的图,其中x在x轴上,s(x)在y轴上。 如果你想对双精度矩阵上的每个元素计算这个函数,这表示你想将这个函数应用到矩阵的每个元素上。 嗯,你是这样做的: xT.dmatrix(x) s1/(1T.exp(-x)) logisti…

SensorKernel层框架分析

接上文安卓9.0Sensor框架前言前面我们已经讲解了sensor框架中的framework到vendor层,这篇文章我们将会讲解kernel层的内容。不过不同的芯片平台,kernel层中的sensor框架是不同的,这里针对的是mt8167s平台。不过这里提醒一下,MTK平…

Linux内核LED子系统、请务必看

前言LED子系统你要是说很难嘛,但是它就是控制一些简单的GPIO口,但是你要是说它很简单嘛,但是我也不见得一个初学者很快就能掌握,你如果是刚入门这部分的话,我觉得你还是要去仔细研究下这些驱动。前两天在网上看到一句话…

UVALive 4394 String painter

题目大意:有两个字符串A,B,一次刷可以把A串一段刷成同一个字母,问至少要刷几次才能把A串变成B串。串长≤100。 本来以为是个很简单的区间DP,后来发现直接区间DP是不行的,这玩意有后效性:刷完一整块之后这一…

centos 6.5 安装 lamp 后mysql不能启动_CentOS 6.5 系统 LAMP(Apache+MySQL+PHP)安装步骤

先来解释一下,什么是 LAMP。正如标题所言,LAMP 实际上就是 Linux、Apache、MySQL、PHP 四个名称的缩写,当然最后一个 “P” 还有其他说法是 Perl 或者 Python。不用多说了,本文讲解的就是 Linux、Apache、MySQL、PHP 这四个东西&a…

Redis连接实例

ECS Windows服务器 如果您本地需要通过公网访问 云数据库 Redis,可以在 ECS Windows 云服务器中通过 netsh 进行端口映射实现。 1. 登录 ECS Windows 服务器,在 CMD 执行以下命令。(公网地址与 连接地址 请替换 为您的实际地址。)…

什么是高内聚,低耦合?

高内聚,低耦合是一个老生常谈的话题,所以拿出来说一下我们在看Linux的一些资料,或者是在面试,又或者跟一个比较牛的大佬讨论技术的时候,可能会听到这个概念。所以,什么是高内聚,低耦合呢&#x…

Web API 2 入门——创建ASP.NET Web API的帮助页面(谷歌翻译)

在这篇文章中 创建API帮助页面将帮助页面添加到现有项目添加API文档在敞篷下下一步作者:Mike Wasson 创建Web API时,创建帮助页面通常很有用,以便其他开发人员知道如何调用API。您可以手动创建所有文档,但最好尽可能自动生成。 为…

Linux fork的写时复制

这个问题是一个同学在知识星球里面提问的看下面的代码#include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <sys/wait.h> #includ…

从单片机工程师的角度看嵌入式Linux

前言 这篇文章简单我们来一起梳理嵌入式Linux的一些知识&#xff0c;方便于一些想跟我一样想要由单片机进阶到嵌入式Linux的朋友做一些参考学习。现在随着嵌入式Linux的教程不断增多&#xff0c;相信应该有不少学单片机的朋友开始折腾这个了吧~嵌入式Linux学哪些东西 1、认识Li…

智能硬件开发神器免费送!距离产品智能化,只差一个“三明治”的距离

重磅资料包免费领取 针对人群&#xff1a;如果您对“人工智能物联网”感兴趣&#xff0c;尤其是您的企业想做产品/行业智能化&#xff0c;一定不能错过这份“物联网人必备的终极大礼包”哦&#xff5e;这几类行业玩家必看&#xff01;&#xff01;&#xff01;制造商、方案商、…

你们班上的同学现在都怎么样了?

今天跟朋友聊天&#xff0c;聊到这个话题&#xff0c;觉的有点意思&#xff0c;所以想拿出来讨论一下。小学小学的时候&#xff0c;我们读书最厉害的应该是我们班上几个老师的孩子&#xff0c;他们像是得到了老师的武功秘籍&#xff0c;读书对他们来说就是家常便饭&#xff0c;…

如何把一个float存到一个长度为4的char数组中?

我以前以为它是可以这样的看代码#include "stdio.h"int main(void) {float fa 123.56;char farray[4] {0};farray[0] ((int)fa>> 24)&0xFF;farray[1] ((int)fa>> 16)&0xFF;farray[2] ((int)fa>> 8 )&0xFF;farray[3] ((int)fa>…

OSPF次末节区域配置 201

【实验拓扑】 【实验基本配置】1、按照上图配置相应接口以及OSPF【实验要求】 1、配置Area 1 为NSSA区域2、在R6上配置1条静态路由160.1.60.0/24指向 Null0&#xff0c;并充分发到OSPF中3、将路由器1的ID修改为150.1.100.100【实验分析】次末节区域&#xff08;NSSA&#xff09…

MTK联发科2021 嵌入式C笔试题分析

题目-分割字符串因为题目是考试的同学凭记忆记下来的&#xff0c;没有记得特别仔细&#xff0c;题目只是写了个大概&#xff0c;我也是凭自己的想法来理解。输入aaa;bbb;ccc输出aaa bbb ccc /*--------------------------------------------*/ 输入,hello,hello,,输出hello hel…

DEVICE_ATTR设置0777引发血案

这个宏我们在内核里面使用非常频繁&#xff0c;这个宏的作用可以抛出sys设备节点给用户使用。用户可以读写sys/class下面的文件节点&#xff0c;以达到控制内核驱动的功效。比如&#xff0c;像这样的设备节点weiqifa:/sys/class/zigbee/onoff $ ls gpio_en power subsystem uev…

「任性」的C语言之父:因拒付论文装订费错失博士学位,论文52年后重见天日...

他是C语言之父、1983年图灵奖得主&#xff0c;还是Unix的关键开发者。然而&#xff0c;他却因为「任性」没有拿到博士学位&#xff0c;而且当年写的博士论文一丢就是半个世纪。如今&#xff0c;这一神秘的博士论文终于重见天日。很多人可能听说过 Dennis Ritchie 这个人。上世纪…

CS224n笔记3 高级词向量表示

本文转自&#xff1a;http://www.hankcs.com/nlp/cs224n-advanced-word-vector-representations.html 这节课从传统的基于计数的全局方法出发&#xff0c;过渡到结合两者优势的GloVe&#xff0c;并介绍了词向量的调参与评测方法。 复习&#xff1a;word2vec的主要思路 遍历整个…

我在深圳,但是家里托人在老家找了一份工作

最近&#xff0c;在微信公众号后台收到一份读者的留言&#xff0c;而且这位读者也是我们GX的&#xff0c;而且更幸运的是&#xff0c;跟我是一个地方的。她是疑惑如下~前辈你好~ 今天看到最新一篇有关读书的推文发现同是HC老乡&#xff0c;斗胆向您请教一些问题&#xff0c;有点…