精华内容
下载资源
问答
  • 2 包的导入方法如下:importpackage包名称.类名称3如果一个项目之中有几百个类,一个个导入会比较麻烦,为了方便导入,可以使用“包名.*”的形式完成,例如:import java.io.*;这里的"*"是通配符,表示该“包名”...

    一点睛

    1 package的声明方法:

    packagepackage名称[.package名称2.package名称3];

    2 包的导入方法如下:

    importpackage包名称.类名称

    3如果一个项目之中有几百个类,一个个导入会比较麻烦,为了方便导入,可以使用“包名.*”的形式完成,例如:

    import java.io.*;

    这里的"*"是通配符,表示该“包名”(java.io)下属的“所有”子类。

    需要说明的是,即使使用的格式是"包.*",但并不表示此包中的所有类都导入,Java编译器很智能,它会"按需导入",代码中不需要的类,Java是不会有任何加载的。

    二实战

    1代码的结构

    2代码

    Person.java package demo.java.a ;//声明pakage

    public class Person

    {

    public String talk()//类中的方法

    {

    return "Person —— >> talk()" ;//返回一串字符串

    }

    }

    TestPackage.java package demo.java.b;

    import demo.java.a.Person;

    // 将demo.java.a包中的Person类导入到此包之中

    class TestPackage

    {

    public static void main(String[] args)

    {

    // 调用demo.java.a中的方法并输出

    System.out.println(new Person().talk());

    }

    }

    3运行 Person —— >> talk()

    展开全文
  • java包的概念作用

    2019-08-19 09:20:45
    概念:用于区别类名命名空间,是一种更好组织类机制。 作用: 1、把功能相似或相关类或接口组织在同一个包中,方便类查找使用。 2、如同文件夹一样,也采用了树形目录存储方式。同一个包中...

    概念:用于区别类名的命名空间,是一种更好的组织类的机制。

    作用:

    • 1、把功能相似或相关的类或接口组织在同一个包中,方便类的查找和使用。

    • 2、如同文件夹一样,包也采用了树形目录的存储方式。同一个包中的类名字是不同的,不同的包中的类的名字是可以相同的,当同时调用两个不同包中相同类名的类时,应该加上包名加以区别。因此,包可以避免名字冲突。

    • 3、包也限定了访问权限,拥有包访问权限的类才能访问某个包中的类。

    展开全文
  • 事务的概念和作用

    万次阅读 多人点赞 2018-03-01 14:59:22
    一、概念: 1.数据库事务: 数据库事务通常指对数据库进行读或写一个操作序列。 它存在包含有以下两个目的: 1、为数据库操作提供了一个从失败中恢复到正常状态方法,同时提供了数据库即使在异常状态下仍能...

    1.      什么是事务,为什么使用事务?

    一、概念:

        1.数据库事务: 数据库事务通常指对数据库进行读或写的一个操作序列。

            它的存在包含有以下两个目的:

            1、为数据库操作提供了一个从失败中恢复到正常状态的方法,同时提供了数据库即使在异常状态下仍能保持一致性的方法。

            2、当多个应用程序在并发访问数据库时,可以在这些应用程序之间提供一个隔离方法,以防止彼此的操作互相干扰。

     

        2.系统中的事务: 处理一系列业务处理的执行逻辑单元,该单元里的一系列类操作要不全部成功要不全部失败

    二、为什么使用事务

        可以保证数据的一致性和完整性(避免异常和错误等导致的数据信息异常) 

    三、事务的特性ACID

        原子性(Atomicity):事务包含的操作全部成功或者全部失败

        一致性(Consistency):数据库从一个一致性状态变到另一个一致性状态

            (一系列操作后,所有的操作和更新全部提交成功,数据库只包含全部成功后的数据就是数据的一致性)

            (由于系统异常或数据库系统出现故障导致只有部分数据更新成功,但是这不是我们需要的最终数据,这就是数据的不一致)

        隔离性(Isolation):事务互相隔离互不干扰

             (事务内部操作的数据对其它事务是隔离的,在一个事务执行完之前不会被其他事务影响和操作)

        持久性(Durability):事务提交后数据应该被永久的保存下来,出现宕机等故障后可以恢复数据

    四、数据库的隔离级别

        此处使用http://blog.csdn.net/qq_33290787/article/details/51924963(写的很好,直接copy下来了)

        数据库事务的隔离级别有4种,由低到高分别为Readuncommitted 、Read committed 、Repeatable read 、Serializable 。而且,在事务的并发操作中可能会出现脏读,不可重复读,幻读


    Read uncommitted(读未提交,顾名思义,就是一个事务可以读取另一个未提交事务的数据。)

        事例:老板要给程序员发工资,程序员的工资是3.6万/月。但是发工资时老板不小心按错了数字,按成3.9万/月,该钱已经打到程序员的户口,但是事务还没有提交,就在这时,程序员去查看自己这个月的工资,发现比往常多了3千元,以为涨工资了非常高兴。但是老板及时发现了不对,马上回滚差点就提交了的事务,将数字改成3.6万再提交。 

        分析:实际程序员这个月的工资还是3.6万,但是程序员看到的是3.9万。他看到的是老板还没提交事务时的数据。这就是脏读。

        那怎么解决脏读呢?Readcommitted!读提交,能解决脏读问题。

     

    Readcommitted 

        读提交,顾名思义,就是一个事务要等另一个事务提交后才能读取数据。 

        事例:程序员拿着信用卡去享受生活(卡里当然是只有3.6万),当他埋单时(程序员事务开启),收费系统事先检测到他的卡里有3.6万,就在这个时候!!程序员的妻子要把钱全部转出充当家用,并提交。当收费系统准备扣款时,再检测卡里的金额,发现已经没钱了(第二次检测金额当然要等待妻子转出金额事务提交完)。程序员就会很郁闷,明明卡里是有钱的… 

        分析:这就是读提交,若有事务对数据进行更新(UPDATE)操作时,读操作事务要等待这个更新操作事务提交后才能读取数据,可以解决脏读问题。但在这个事例中,出现了一个事务范围内两个相同的查询却返回了不同数据,这就是不可重复读。 

        那怎么解决可能的不可重复读问题?Repeatable read ! 


    Repeatableread 

        重复读,就是在开始读取数据(事务开启)时,不再允许修改操作 

        事例:程序员拿着信用卡去享受生活(卡里当然是只有3.6万),当他埋单时(事务开启,不允许其他事务的UPDATE修改操作),收费系统事先检测到他的卡里有3.6万。这个时候他的妻子不能转出金额了。接下来收费系统就可以扣款了。 

        分析:重复读可以解决不可重复读问题。写到这里,应该明白的一点就是,不可重复读对应的是修改,即UPDATE操作。但是可能还会有幻读问题。因为幻读问题对应的是插入INSERT操作,而不是UPDATE操作。 


    什么时候会出现幻读? 

        事例:程序员某一天去消费,花了2千元,然后他的妻子去查看他今天的消费记录(全表扫描FTS,妻子事务开启),看到确实是花了2千元,就在这个时候,程序员花了1万买了一部电脑,即新增INSERT了一条消费记录,并提交。当妻子打印程序员的消费记录清单时(妻子事务提交),发现花了1.2万元,似乎出现了幻觉,这就是幻读。

     

        那怎么解决幻读问题?Serializable!

     

    Serializable序列化 

        Serializable 是最高的事务隔离级别,在该级别下,事务串行化顺序执行,可以避免脏读、不可重复读与幻读。但是这种事务隔离级别效率低下,比较耗数据库性能,一般不使用。

     

        值得一提的是:大多数数据库默认的事务隔离级别是Read committed,比如Sql Server , Oracle。Mysql的默认隔离级别是Repeatable read。


    展开全文
  • 构造方法主要作用是完成对类对象初始化工作 构造方法不能由编程人员显式地直接调用 在创建new()一个类新对象时,系统会自动调用该类构造方法为新对象初始化 构造方法特点 构造方法没有返回类型 构造方法...

    构造方法

    在创建对象时,为指定属性进行初始化赋值,也可以传入参数为指定的属性进行赋值。

    构造方法是一个用来初始化一个对象的内部状态的特殊方法

    构造方法没有返回值类型

    在这里插入图片描述

    构造方法的主要作用是完成对类对象的初始化工作

    构造方法不能由编程人员显式地直接调用

    在创建new()一个类的新对象时,系统会自动调用该类的构造方法为新对象初始化

    构造方法特点

    构造方法没有返回类型

    构造方法的方法名与类名相同

    在Java语言中,每个类都至少有一个构造方法

    如果类的定义者没有显式地定义任何构造方法,java编译器将自动为类提供一个默认的构造方法,默认构造方法没有参数

    在Java类中,一旦类的定义者显式地定义了一个或多个构造方法,系统将不再提供默认的构造方法

    构造方法

    修饰符多为public

    无返回值(void也没有)

    方法名固定(类名)

    参数列表已知(属性)

    方法体多为赋值操作

    构造方法的重载通常只应用参数个数的不同与数据类型不同

    public class Student {
    	public int id;//id
    	public String name;//姓名
    	public String sex;//性别
    	public int age;//年龄
    	//如果没有显示的定义构造方法 那么系统会自动添加一个无参构造方法
    	//public Student() {}
        //	在Java类中,一旦类的定义者显式地定义了一个或多个构造方法,系统将不再提供默认的构造方法
    	
    //	构造方法 
    //	修饰符多为public  
    //	无返回值(void也没有) 
    //	方法名固定(类名)
    //	参数列表已知(属性)
    //	方法体多为赋值操作
    	public Student(String name,int age,int id) {
    		this.id=id;
    		this.name=name;
    		this.age=age;
    	}
    	public void sayHello() {
    		System.out.println("我叫"+name+",今年"+age+"岁,学号为"+id);
    	}
    }
    

    this关键字

    指代当前对象,经常用于构造方法中,用于标识局部变量与全局变量,因为在进行变量使用时,默认使用局部变量,当需要将局部变量的值赋值给全局变量时,如果局部变量的变量名与全局变量名一致,可能导致电脑不能区分,从而造成赋值不准确,这时候就需要使用this关键字,用来标识指定属性为当前对象的具体属性,将局部变量对应的值进行赋值操作

    说是指向当前对象的原因:因为构造方法时用来创建对象的,一定会创建一个新的对象,一个类可能存在多个拥有相同属性的对象。那么在赋值时究竟要为那个对象的name属性进行赋值,所以this标志着当前本次创建的对象

    public Student(String name,int age,int id) {
    		this.id=id;
    		this.name=name;
    		this.age=age;
    	}
    

    面向对象三大特性-封装

    封装的概念:

    封装可以被认为是一个保护屏障,防止该类的代码和数据被外部类定义的代码随机访问。

    提升安全性

    属性的封装:

    隐藏实现细节,将属性私有化,提供公有方法访问私有属性

    为什么要有属性的封装:对于一个对象而言,属性可以直接使用对象名.属性名进行调用这样很不安全,通过修改访问权限修饰符达到权限限制访问使用的功能

    属性封装之后,只能两种途径进行赋值

    1、构造方法

    2、自定义公开的方法进行设置与获取指定属性的值

    方法的封装:

    将方法体使用方法进行封装,然后提供执行需要的参数的过程(将固定的功能使用方法进行封装,之后可以重复调用)

    类的封装:

    将一类事物共有的属性与方法封装在一起的过程(用于描绘对象的模版可以通过封装了特定属性与方法的类对指定对象进行描述)

    访问权限修饰符

    在这里插入图片描述

    public:

    所有的类都能有public访问说明符。你能从任何Java程序的任何对象里使用公有类、成员数据(属性)和方法。

    private

    只有本类的类对象才能访问的私有变量或方法,类内部成员之间可以访问;

    protected

    在类中被声明为保护的变量,方法能被其子类访问。

    默认

    (default)假如没有规定访问说明符,那就是friendly的。拥有默认访问符的类、变量或方法对包里的所有类来说都是可访问的。

    说明:在方法中的变量不能有访问说明符,因为该变量只能在该方法中使用,外界无法访问。

    Java中的封装概念

    大多数是针对于属性的封装,使用相应的访问权限修饰符将属性进行封装,使其只对可信的类可见,并提供公开的setter赋值与getter取值方法使其也可以在其他类中调用,从而提高对象属性的安全性,提高代码的安全性。

    属性的封装步骤:

    1. 将所有属性的修饰符使用private替换

    2. 为每一个私有属性提供一对赋值取值方法

    3. 如果构造方法也对私有属性进行了赋值也要一并进行限制

    在java中可以使用类与对象来描绘所有事物,那么对象就是保存事物属性与行为的基本单位,而类是创建这个单位的模板。类才是我们程序员书写需要进行考虑并完善的代码。

    一个完整的类的书写形式:

    1、类名 public class 类名 类只能用public或者默认修饰符修饰

    2、类体

    (1)属性

    private 属性名 使用private对属性进行封装使其只能在被类中被使用 提高了属性的安全性

    (2)方法

    1)构造方法

    修饰符 类名 (参数列表){赋值语句} 修饰符多为public 也可以为其他三种之一

    2)普通方法

    ①私有属性的赋值获取方法

    ②自己本身方法

    一个类需要将其所有属性设置为private 并提供公开的get set方法 并提供全参构造方法与无参构造方法

    快速生成getter、setter方法快捷键 alt+shift +s 选择 generate Getters and Setters,
    在这里插入图片描述

    选择要生成getter setter方法的属性 点击Generate

    在这里插入图片描述

    生产构造方法快捷键 alt+shift +s 选择 Generate Constructor using Fields…

    在这里插入图片描述

    选择要生成构造方法参数列表 之后点击 Generate

    在这里插入图片描述

    练习

    1.数组遍历(依次输出数组中的每一个元素)

    2.数组获取最值(获取数组中的最大值最小值)

    3.数组元素逆序 (就是把元素对调)

    4.数组查表法(根据键盘录入索引,查找对应星期)

    5.数组元素查找(查找指定元素第一次在数组中出现的索引)

    6.键盘输入 输出斐波那契数列指定输入位置的数据

    7.键盘输入行数 输出指定行数的杨辉三角

    8.声明方法,传入两个数组,返回一个数组,将两数组中相同的数据存入返回的数组

    9.声明方法,传入两个数组,返回一个数组,将两数组中数据存入返回的数组(要求:两数组相同的数据只存入一次)

    10.声明方法,传入两个数组,返回一个数组,将两数组数据存入返回数组之后进行排序

    11.声明方法,返回一个长度为10数组,要求数组中数据使用随机数随机生成1~10之间的数据,要求数组中数据不能重复

    作业

    1. 分别书写普通排序与冒泡排序将指定数组进行从小到大和从大到小排序

    2. 完成双色球数组生成(前6个号从1~33中随机选择不重复 后1个号从1~16中选择)返回存储生成的长度为7的数组

    3. 声明创建一个银行账户类,拥有私有属性 用户名 密码 真实姓名 余额 电话号 拥有方法 查询余额(返回余额) 存款(输入存款金额余额相加) 取款(输入取款金额金额相减)

    展开全文
  • MFC的概念和作用

    2015-12-23 15:04:59
    (一)全程:Microsoft Foundation Class Library ...作用:基于框架进程开发,提高工作效率,减少开发周期,节约开发成本 (二)重要头文件 afx.h --- 包含了MFC库中几乎所有类声明 afxwin.h -- 包含了 afxext.
  • 文章目录Python学习包的概念和创建和导入包sys.path和模块搜索路径模块的发布和安装 Python学习 包的概念和创建和导入包 包package的概念和结构 1.当一个项目中有很多个模块时,需要再进行组织,我们将功能类似的...
  • ServletContext是javax.servlet内定义接口,Web容器会为每个Web程序构造一个实现该接口对象实例,通过这个对象,Servlet可以web容器进行交互,如获取Web容器版本号,通过Web容器日志机制记录信息等;...
  • 作用:索引提供指向存储在表指定列中数据值指针,然后根据您指定排序顺序对这些指针排序。数据库使用索引以找到特定值,然后顺指针找到包含该值行。这样可以使对应于表SQL语句执行得...
  • Maven的概念: 是一个基于java平台的 自动化构建工具 自动化构建工具Maven:将原材料(java、js、css、html、图片)->产品(可发布项目) 自动化构建工具的发展历史:make-ant-Maven-gradle Maven的作用: 管理...
  • 理解Java中【的概念

    千次阅读 2016-10-29 12:51:15
    Java中用package关键字定义一个包,下面通过几个实验,理解Java中的包的概念和作用。 实验1:先看一个无包的情形 在G盘下新建一个Test.java,如图1: 111:11111111 写下面这些代码 public class PackageTest{ ...
  • 和 java 里面的包类似,也就是 PHP 命名空间意思和作用,为了规范组织结构避免冲突。 程序目录结构: add.go package Cal // 名,类比命名空间,在需要使用地方引入(类比php use 命名空间语法) func...
  • 接口语法: 接口中只能包含静态常量,抽象方法。 Java接口是对功能扩展; 通过实现接口,Java类可以...抽象类具体实现类之间是一种继承关系,也就是说,如果采用抽象类方式,则父类子类在概念上应该是相同
  • Java 包的作用和定义

    万次阅读 2018-06-01 22:11:07
    包是Java语言提供的一种...一、包的作用 1 把功能相似或相关的类或接口组织在同一个包中,方便类的查找使用。 2 如同文件夹一样,包也采用了树形目录的存储方式。同一个包中的类名字是不同的,不同的包中的类的...
  • IOC的概念和作用控制反转(IoC:Inversion of Control)把创建对象的权利转交给框架(框架的重要特征),并非面向对象的专用术语。 它包含依赖注入(DI:Dependency Injection )2.1程序的耦合2.2 利用工厂模式解耦...
  • ip地址的概念和作用

    2010-08-27 16:20:11
    IP地址是我们进行TCP/IP通讯基础,每个连接到网络上计算机都必须有一个IP地址。我们目前使用IP地址是32位,通常以点分十...一个简单IP地址其实包含了网络地址主机地址两部分重要信息。 IP地址类型...
  • Go 语言包的概念

    2019-05-27 11:17:56
    Golang 的每一个文件都属于一个包,也就是说Go是以包的形式来管理文件项目目录结构的。 Golang 包的三大作用 区分相同名字的函数、变量等标识符。 当程序文件很多时,可以很好的管理项目。 控制函数、变量等访问...
  • Perl中包的概念

    2020-06-10 22:11:43
    包的切换 当前包既是一个编译时概念也是一个运行时概念。大多数变量名的查找都发生在编译时,不过对符号引用解引用时,以及在eval下编译新代码时,会发生运行时查找。 未用my声明的所有变量都与一个包关联,甚至类似...
  • 包的基本概念

    2015-12-21 08:51:26
    包的概念作用  引用 Java中的包(Package)其实指的就是目录,它是为了更好地管理Java类(Class)接口(Interface) 作用:解决多人开发时候的类同名问题 包的格式  引用 包名称.子包名称 如:...
  • 深入理解包的概念

    2018-12-29 16:34:02
    1、包的概念:在开发中,我们存在几百个甚至上千个Java文件,如果所有的Java文件都在一个目录中,管理起来也很痛苦,Java也可以创建一个类似文件夹的东西,以方便我们管理java文件,我们称这个文件夹为包 2、包的作用...
  • 一、JAVA标识符标识符就是用于给 Java 程序中变量、类、方法等命名符号。如图标黄部分:使用标识符时,... 标识符不能是 Java 关键字保留字( Java 预留关键字,以后升级版本中有可能作为关键字),但可以包含...
  • 一:线程概念线程是程序运行基本执行单元。当操作系统(不包括单线程操作系统,如微软早期DOS)在执行一个程序时,会在系统中建立一个进程,而在这个进程中,必须至少建立一个线程(这个线程被称为主线程)来作为...
  • 一:线程概念 线程是程序运行基本执行单元。当操作系统(不包括单线程操作系统,如微软早期DOS)在执行一个程序时,会在系统中建立一个进程,而在这个进程中,必须至少建立一个线程(这个线程被称为主线程)来...
  • 前端工程化涉及几个概念和作用区分清楚了,前端工程化做起来就得心应手了。 先来一张图,直观地看看这貌似混乱关系 眼花了吗?接下来讲几个概念就清楚了 技术域(或技术方案) 也就是图中黄色椭圆形部分,...
  • Java Io流的概念 java的io是实现输入输出的基础,可以方便的实现数据的输入输出操作。 注:java把所有的传统的流类型都放到在java io下,用于实现输入输出功能。 IO流的分类 按照流的流向分,可以分为输入...
  • 24--包的概念及使用

    2021-03-05 17:14:13
    包的概念及使用 包的概念 试想这样一种场景,现在如果很多开发人员共同开发一个项目,则肯定出现类名称相同的情况,这样一来就会比较麻烦,此时我们可以利用package关键字来解决此类问题。 包实际上就是一个文件夹,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,727
精华内容 1,490
关键字:

包的概念和作用