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,一经查实,立即删除!

相关文章

【BZOJ3514】Codechef MARCH14 GERALD07加强版 LCT+主席树

【BZOJ3514】Codechef MARCH14 GERALD07加强版 Description N个点M条边的无向图,询问保留图中编号在[l,r]的边的时候图中的联通块个数。 Input 第一行四个整数N、M、K、type,代表点数、边数、询问数以及询问是否加密。接下来M行,代表图中的每…

安卓9.0Sensor框架

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

java ognl表达式_java -------ognl表达式入门

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼------------------------------------------------------------------------------------ognl:对象表达式语言,可以用一个表达式快速地访问一个对象的属性,还可以调用对象的方法--------------------------…

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平…

【习题 5-8 UVA - 230】Borrowers

【链接】 我是链接,点我呀:) 【题意】 在这里输入题意 【题解】 用mapset写个模拟就好。 3个区域 书架、桌子、别人的手上。 其中前两个区域的书都能借出去。 【代码】 #include <bits/stdc.h> using namespace std;set <pair<string, string> > mset1,mse…

java requestparams_java – 如何验证@RequestParams不为空?

我有一个计算器服务,从用户获取操作类型num1和num2.我需要验证用户是否实际输入了这些值,而不是将其留空.RequestMapping(value "/calculate")ResponseBodypublic CalculationResult calculate(RequestParam(name "op") String operation, RequestParam(…

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

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

UVALive 4394 String painter

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

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

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

Redis连接实例

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

什么是高内聚,低耦合?

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

java 8 兼容_甲骨文限制 Java 9 到 Java 8 的向后兼容性

在开发者们正兴奋着准备把 Java 8 工具包转向 Java 9 的时候&#xff0c;甲骨文的首席执行官提出了要限制两个版本的兼容性。在周一下午 OpenJDK 的邮件列表中的一封邮件中&#xff0c;甲骨文的 Java 平台的首席架构师 Mark Reinhold 指出会对 JDK8 增加更多变化(大概在 2014 年…

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

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

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…

Java低级编程软件_JAVA语言说低级语言吗

高级语言&#xff1a;C、C、Java、Python、Pascal、Lisp、Prolog、FoxPro、易语言等都是高级语言&#xff0c;相对于低级语言来说&#xff0c;高级语言采用易于识别和记忆的字符来作为关键字&#xff0c;也更接近人类的思维方式&#xff0c;编写容易读写性好&#xff0c;开发效…

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

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

Java类的继承关键字_Java的第八天(类的继承、super关键字的使用、方法的重写)...

39.类的继承java描述类的时候&#xff0c;咱们若是发现有几个类有重复的属性和方法&#xff0c;咱们就能够采用继承的方法来设计ide使用extends关键字来继承this语法&#xff1a;设计class 子类 extends 父类{对象子类属性继承子类方法内存}资源特色&#xff1a;(1)子类会把父类…

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

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