Java基本-2对象与包
1、对象:通俗的来讲,就是一个东西,比如汽车是一个对象,人是一个对象,狗是一个对象。
2、类:她描述的是对象的行为或者状态,比如对象是汽车,那么嘞可以分为小汽车类,大货车类,客车类等。
在类中可以包含局部变量,成员变量,类变量。简单理解三个变量就是:
- 在方法、构造方法或者语句块中定义的变量被称为局部变量。方法结束后会自动销毁
- 成员变量是定义在类中,方法体之外的变量。成员变量可以被类中方法、构造方法和特定类的语句块访问。
- 类变量也声明在类中,方法体之外,但必须声明为static类型
变量权限修饰:
作用域 | 当前类 | 同一包 | 子孙类 | 其他包 |
public | √ | √ | √ | √ |
protected | √ | √ | √ | × |
default | √ | √ | × | × |
private | √ | × | × | × |
3、构造方法:每个类都有构造方法,如果,如果没有显式地为类定义构造方法,那么Java编译器将会为该类提供一个默认构造方法。
- 在创建对象的时候,至少要调用一个构造方法。
- 构造方法名称必须与类同名,一个类可以有多个构造方法,传入的不同的参数个数。
- public class Puppy{
- public Puppy(){
- }
- public Puppy(String name){
- // 这个构造器仅有一个参数:name
- }
- public Puppy(String name,String sex){
- // 这个构造器有两个参数:name,sex
- }
- }
4、创建访问对象:对象是根据类创建的,使用关键字new来创建一个新的对象。
创建对象需要三步:
- 声明:声明一个对象,包括对象名称和对象类型
- 实例化:使用关键字new来创建一个对象
- 初始化:使用new创建对象时,会调用构造方法初始化对象
- public class Test4 {// 创建的一个test4类
- public Test4() {// 构造一个不需要参数的方法,假设为方法1
- System.out.println("没有留下名字");
- }
- public Test4(String name) {// 构造一个需要传入name参数的方法,假设为方法2
- System.out.println("姓名为:" + name);
- }
- public static void main(String[] args) {
- Test4 name = new Test4("小明");// 声明对象为name,使用new来创建,调用方法2来初始化对象
- }
- }
- 输出结果为
- ---------------------
- 姓名为:小明
通过已创建的对象来访问成员变量和成员方法,如下所示:
- /* 实例化对象 */
- ObjectReference = new Constructor();
- /* 访问类中的变量 */
- ObjectReference.variableName;
- /* 访问类中的方法 */
- ObjectReference.methodName();
5、Java包:主要就是用来对类和接口进行分类,使用inport进入Java包导入。例:import java.io.*;即根据路径导入Io下的所有类,只导入需要的类时指定类名即可。
6、数据类型:byte(8位)、short(16位)、int(32位)、long(64位)、float(单精度32位)、double(双精度64位)、boolean(表示一位的信息:true 和 false)、char(一个单一的 16 位 Unicode 字符)
7、运算符优先级:
类别 | 操作符 | 关联性 |
---|---|---|
后缀 | () [] . (点操作符) | 左到右 |
一元 | + + - !〜 | 从右到左 |
乘性 | * /% | 左到右 |
加性 | + - | 左到右 |
移位 | >> >>> << | 左到右 |
关系 | >> = << = | 左到右 |
相等 | == != | 左到右 |
按位与 | & | 左到右 |
按位异或 | ^ | 左到右 |
按位或 | | | 左到右 |
逻辑与 | && | 左到右 |
逻辑或 | | | | 左到右 |
条件 | ?: | 从右到左 |
赋值 | = + = - = * = / =%= >> = << =&= ^ = | = | 从右到左 |
逗号 | , | 左到右 |
Java基本-2对象与包的更多相关文章
- Java中net.sf.json包关于JSON与对象互转的问题
在Web开发过程中离不开数据的交互,这就需要规定交互数据的相关格式,以便数据在客户端与服务器之间进行传递.数据的格式通常有2种:1.xml:2.JSON.通常来说都是使用JSON来传递数据.本文正是介 ...
- Java中net.sf.json包关于JSON与对象互转的坑
在Web开发过程中离不开数据的交互,这就需要规定交互数据的相关格式,以便数据在客户端与服务器之间进行传递.数据的格式通常有2种:1.xml:2.JSON.通常来说都是使用JSON来传递数据.本文正是介 ...
- 三. Java类与对象8.再谈Java包
在Java中,为了组织代码的方便,可以将功能相似的类放到一个文件夹内,这个文件夹,就叫做包. 包不但可以包含类,还可以包含接口和其他的包. 目录以"\"来表示层级关系,例如 E:\ ...
- Java提高篇——对象克隆(复制)
假如说你想复制一个简单变量.很简单: int apples = 5; int pears = apples; 不仅仅是int类型,其它七种原始数据类型(boolean,char,byte,short, ...
- Java的常用对象①②
Java的常用对象① Java的常用对象有很多,这里只对lang包中常用的Object,Date(Calendar,DateFormat,Math),System,Runtime进行介绍.㈠Objec ...
- Java中代理对象的使用小结
在某些情况下,一个客户不想或不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到了中介作用,这不仅仅使用代理模式,还可以实现适配器模式.装饰模式等. 代理对象内部含有对真实对象的引用,从而 ...
- Java面向对象 其他对象
Java面向对象 其他对象 知识概要: (1)可变参数 (2)静态导入 (3)System (4)Runtime (5)Date Calendar (6)Math 本 ...
- java中最常用jar包的用途说明
java中最常用jar包的用途说明,适合初学者 jar包 用途 axis.jar SOAP引擎包 commons-discovery-0.2.jar 用来发现.查找和实现可插入式接口,提供一些一般类实 ...
- Java基础7-异常;jar包
昨日内容回顾 多态:多种状态,多态的前提条件是继承或者是实现 面向接口编程 降低耦合度 接口是最低标准,接口可以多重继承 接口中的所有方法都是抽象方法 抽象类中可以没有抽象方法 匿名内部类对象 将对类 ...
随机推荐
- Cmake 01
1. sdsf(single direction single file) 1.1 The directory tree /* ./template | +--- build | +---main. ...
- Linux MySQL 5.1源码安装
安装必备的软件 yum install ncurses-devel -y yum install pcre pcre-devel -y yum install gcc* -y 解压缩 tar -z ...
- MVC中某个页面不需要引用母版页的正确写法
有些页面想使用单独的样式不想用母版页的时候,可以在开始声明下,就可以不用母版页的CSS和JS引用了语法如下: @{Layout = "";} . 非常之简单
- 【LOJ115】无源汇有上下界可行流(模板题)
点此看题面 大致题意: 给你每条边的流量上下界,让你判断是否存在可行流.若有,则还需输出一个合法方案. 大致思路 首先,每条边既然有一个流量下界\(lower\),我们就强制它初始流量为\(lower ...
- 2月4号学习的一个SSM整合项目,第一课
本文引自:https://github.com/Sunybyjava/seckill 原作者:sunybyjava@gmail.com seckill 一个整合SSM框架的高并发和商品秒杀项目,学习 ...
- svn update 时总是提示 Password for '默认密钥' GNOME keyring: 输入密码
执行svn update 时 总是提示输入密码. $ cd ~/.gnome2/keyrings/ $ ls $ rm 默认密钥.keyring
- delete分析 引用于 http://www.cnblogs.com/yuzhongwusan/archive/2012/06/14/2549879.html
最近重新温习JS,对delete操作符一直处于一知半解的状态,偶然发现一篇文章,对此作了非常细致深入的解释,看完有茅塞顿开的感觉,不敢独享,大致翻译如下. 原文地址:http://perfection ...
- with(){}方法
<html><head><script type="text/javascript">function validate_email(field ...
- 1189: [HNOI2007]紧急疏散evacuate
Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 3831 Solved: 1119[Submit][Status][Discuss] Descript ...
- jsp <form>表单提交中如何在value属性中写表达式
<input type="text" name="grop_id" value="<%=rs.getString(2)%>" ...