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包
昨日内容回顾 多态:多种状态,多态的前提条件是继承或者是实现 面向接口编程 降低耦合度 接口是最低标准,接口可以多重继承 接口中的所有方法都是抽象方法 抽象类中可以没有抽象方法 匿名内部类对象 将对类 ...
随机推荐
- Java 字符串转码工具类
StringConvertUtils.java package javax.utils; /** * 字符串转码工具类 * * @author Logan * @createDate 2019-04- ...
- Spring boot 集成Spring Security
依赖jar <dependency> <groupId>org.springframework.cloud</groupId> <artifactId> ...
- 使用MongoDB 2.6 C++驱动中的连接池
.post p{text-indent: 2em;} MongoDB2.6的CXX驱动(mongo-cxx-driver-26compat),内置包含了数据库连接池,方便管理数据库连接,但是官方文档说 ...
- 使用Mac的过程中的一些小操作
前言:使用Mac的过程中的一些小操作 查看Mac系统是32位还是64位: 方法1: 点击左上角的苹果按钮->关于本机->概览->系统报告->软件->偏好设置面板:右侧有提 ...
- linux命令详解-useradd,groupadd
linux命令详解-useradd,groupadd 我们在linux命令行中输入useradd: Options: -b, --base-dir BASE_DIR base direc ...
- 使用phpExcel批量上传excel表数据到mysql数据库中
/*批量上传数据*/ if(isset($_POST['submit']) && $_POST['submit']=='上传文件') { //导入类文件 require_once (& ...
- linux数据库copy方法
相信大多数程序员都会遇到数据库copy的问题,下面就总结几种常见的方法,针对有mysql基础的同学参考 方法一:利用sqlyog的copy database的功能,如图 这种最简单,速度比较慢: 方法 ...
- 基于mybatis设计简单信息管理系统2
1.空指针异常 public class CanvasServlet extends HttpServlet { private CanvasService canvasService; privat ...
- Linux文件服务器实战(虚拟用户)
vsftpd基于系统用户访问ftp服务器,系统用户越多越不利于管理,不利于系统安全,这样就以vsftp虚拟防护的方式来解决. 虚拟用户没有实际的真实系统用户,,而是通过映射到其中一个真实用户以及设置相 ...
- JQuery实现父级选择器(广告实现)
效果图如下: HTML代码如下: <!DOCTYPE html> <html lang="en"> <head> <meta charse ...