try

【Python】(十一)异常处理

筅森魡賤 提交于 2020-01-20 00:28:31
文章目录 1.异常 2.异常处理 3.断言 1.异常 什么是异常 异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行。 一般情况下,在Python无法正常处理程序时就会发生一个异常。 异常是Python对象,表示一个错误。 当Python脚本发生异常时我们需要捕获处理它,否则程序会终止执行。 常见异常 异常名称 描述 BaseException 所有异常的基类 SystemExit 解释器请求退出 KeyboardInterrupt 用户中断执行(通常是输入^C) Exception 常规错误的基类 StopIteration 迭代器没有更多的值 GeneratorExit 生成器(generator)发生异常来通知退出 StandardError 所有的内建标准异常的基类 ArithmeticError 所有数值计算错误的基类 FloatingPointError 浮点计算错误 OverflowError 数值运算超出最大限制 ZeroDivisionError 除(或取模)零 (所有数据类型) AssertionError 断言语句失败 AttributeError 对象没有这个属性 EOFError 没有内建输入,到达EOF 标记 EnvironmentError 操作系统错误的基类 IOError 输入/输出操作失败 OSError 操作系统错误

MVC实例及用三层架构实现对学生信息的增删改查

試著忘記壹切 提交于 2020-01-20 00:11:43
一、MVC设计模式实例 M层 Login.java package org.entity; public class Login { private int id; private String uname; private String upwd; public Login() { } public Login( String uname, String upwd) { this.uname = uname; this.upwd = upwd; } public Login(int id, String uname, String upwd) { this.id = id; this.uname = uname; this.upwd = upwd; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getUname() { return uname; } public void setUname(String uname) { this.uname = uname; } public String getUpwd() { return upwd; } public void setUpwd(String upwd) { this.upwd =

MySQL——JDBC

爱⌒轻易说出口 提交于 2020-01-19 16:47:22
1、数据库驱动 驱动:声卡,显卡、数据库 我们的程序会通过 数据库 驱动,和数据库打交道! 2、 JDBC SUN 公司为了简化 开发人员的(对数据库的统一)操作,提供了一个(Java操作数据库的)规范,俗称 JDBC 这些规范的实现由具体的厂商去做~ 对于开发人员来说,我们只需要掌握 JDBC 接口的操作即可! java.sql javax.sql 还需要导入一个数据库驱动包 mysql-connector-java-5.1.47.jar 3、第一个JDBC 程序 创建测试数据库 CREATE DATABASE jdbcStudy CHARACTER SET utf8 COLLATE utf8_general_ci; USE jdbcStudy; CREATE TABLE users( id INT PRIMARY KEY, NAME VARCHAR(40), PASSWORD VARCHAR(40), email VARCHAR(60), birthday DATE ); INSERT INTO users(id,NAME,PASSWORD,email,birthday) VALUES(1,'zhansan','123456','zs@sina.com','1980-12-04'), (2,'lisi','123456','lisi@sina.com','1981-12-04'

JDK7和JDK9流中异常的处理

点点圈 提交于 2020-01-19 12:10:21
package com.learn.demo06.trycatch; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; /* JDK7的新特性 在try的后边可以增加一个(),在括号中可以定义流对象 那么这个流对象的作用域就在try中有效 try中的代码执行完毕,会自动把流对象释放,不用写finally 格式: try(定义流对象;定义流对象....){ 可能会产出异常的代码 }catch(异常类变量 变量名){ 异常的处理逻辑 } */ public class Demo02JDK7 { public static void main(String[] args) { try(//1.创建一个字节输入流对象,构造方法中绑定要读取的数据源 FileInputStream fis = new FileInputStream("c:\\1.jpg"); //2.创建一个字节输出流对象,构造方法中绑定要写入的目的地 FileOutputStream fos = new FileOutputStream("d:\\1.jpg");){ //可能会产出异常的代码 //一次读取一个字节写入一个字节的方式 //3.使用字节输入流对象中的方法read读取文件

try catch

生来就可爱ヽ(ⅴ<●) 提交于 2020-01-19 08:44:16
//try-catch 尝试(try)-抓获(catch) try//尝试,保护起来,使程序出错也能执行 { //确定不会出错时不要用try,当不确定时使用try-catch可以捕获错误, int i = int.Parse(Console.ReadLine()); Console.WriteLine("没有异常"); } catch (Exception)//这里捕获错误,有错误才执行 { Console.WriteLine("对不起,程序出错了,"); } finally//不管有没有错最后都执行 { Console.WriteLine("感谢使用"); } Console.ReadLine(); 来源: https://www.cnblogs.com/thq1218/p/4335948.html

自定义的jdbc连接工具类JDBCUtils【java 工具类】

て烟熏妆下的殇ゞ 提交于 2020-01-19 07:02:43
JDBCUtils 类设计:   1. 创建私有的属性*(连接数据库必要的四个变量):dreiver url user password   2. 将构造函数私有化   3.将注册驱动写入静态代码块   4.外界只能通过调用本工具的静态方法 getConnectio() 获取数据库连接,让调用者处理异常(抛出异常)   5. 资源关闭采用也采用静态方法调用    升级版:使用 properties 配置文件进行数据库连接配置见下文工具二 JDBCUtils 代码实现: package com.test.utils; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public final class JDBCUtils { private static String driver="com.mysql.jdbc.Driver"; private static String url="jdbc:mysql://localhost:3306/store28"; private static String user="root"; private

Zookeeper 初体验之——JAVA实例

二次信任 提交于 2020-01-19 06:30:15
简介 Apache Zookeeper 是由 Apache Hadoop 的 Zookeeper 子项目发展而来,现在已经成为了 Apache 的顶级项目。Zookeeper 为分布式系统提供了高效可靠且易于使用的协同服务,它可以为分布式应用提供相当多的服务,诸如统一命名服务,配置管理,状态同步和组服务等。 Zookeeper 接口简单,开发人员不必过多地纠结在分布式系统编程难于处理的同步和一致性问题上,你可以使用 Zookeeper 提供的现成(off-the-shelf)服务来实现分布式系统的配置管理,组管理,Leader 选举等功能。 英文原文地址 : http://zookeeper.apache.org/doc/current/javaExample.html 一个简单的 Zookeeper Watch 客户端 为了介绍 Zookeeper Java API 的基本用法,本文将带你如何一步一步实现一个功能简单的 Zookeeper 客户端。该 Zookeeper 客户端会监视一个你指定 Zookeeper 节点 Znode, 当被监视的节点发生变化时,客户端会启动或者停止某一程序。 基本要求 该客户端具备四个基本要求: 客户端所带参数: Zookeeper 服务地址。 被监视的 Znode 节点名称。 可执行程序及其所带的参数 客户端会获取被监视 Znode

JUC(java.util.concurrent)

不羁的心 提交于 2020-01-19 04:45:17
在 Java 5.0 提供了 java.util.concurrent (简称JUC )包,在此包中增加了在并发编程中很常用的实用工具类,用于定义类似于线程的自定义子系统,包括线程池、异步 IO 和轻量级任务框架。提供可调的、灵活的线程池。还提供了设计用于多线程上下文中的 Collection 实现等。 一、volatile关键字、内存可见性 内存可见性 内存可见性(Memory Visibility)是指当某个线程正在使用对象状态而另一个线程在同时修改该状态,需要确保当一个线程修改了对象状态后,其他线程能够看到发生的状态变化。 可见性错误是指当读操作与写操作在不同的线程中执行时,我们无法确保执行读操作的线程能适时地看到其他线程写入的值,有时甚至是根本不可能的事情。 我们可以通过同步来保证对象被安全地发布。除此之外我们也可以使用一种更加轻量级的 volatile 变量。 volatile 关键字 Java 提供了一种稍弱的同步机制,即 volatile 变量,用来确保将变量的更新操作通知到其他线程,可以保证内存中的数据可见。可以将 volatile 看做一个轻量级的锁,但是又与锁有些不同: 对于多线程,不是一种互斥关系 不能保证变量状态的“原子性操作” public class TestVolatile { public static void main(String[] args

java面试题大全-基础方面

我只是一个虾纸丫 提交于 2020-01-19 03:53:23
Java基础方面: 1、作用域public,private,protected,以及不写时的区别 答:区别如下: 作用域 当前类 同一package 子孙类 其他package public √ √ √ √ protected √ √ √ × friendly √ √ × × private √ × × × 不写时默认为friendly 2、Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口) 答:匿名的内部类是没有名字的内部类。不能extends(继承) 其它类,但一个内部类可以作为一个接口,由另一个内部类实现 3、Static Nested Class 和 Inner Class的不同 答:Nested Class (一般是C++的说法),Inner Class (一般是JAVA的说法)。Java内部类与C++嵌套类最大的不同就在于是否有指向外部的引用上。注: 静态内部类(Inner Class)意味着1创建一个static内部类的对象,不需要一个外部类对象,2不能从一个static内部类的一个对象访问一个外部类对象 4、&和&&的区别 答:&是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and) 5、Collection 和 Collections的区别 答

Python socket 基础(Client) - Foundations of Python Socket

孤街浪徒 提交于 2020-01-19 03:45:28
1 Python socket 基础- Foundations of Python Socket 2 3 建立socket - establish socket 4 import socket 5 s = socket.socket(socket.AF_INET,socket.SOCK_STREAM) 6 # s = 通信类型(type) + 协议家族(protocol) 7 # AF_INET = IPV4 ; AF_INET6 = IPV6 8 # SOCK_STREAM = TCP ; SOCK_DGRAM UDP 9 10 s.connect(("www.zzyzz.top",80)) 11 # s.connect((IP,PORT)) 12 # python 中 socket 对象的 connect()方法会利用 DNS 把域名解析成 IP 13 14 寻找端口号 - detect the port 15 port = socket.getservbyname('http','TCP') 16 # 查询系统特定服务的端口号, 小于1024 由 IANA(Internet Assigned Numbers Authority)分配. 17 # socket.getservbyname( protocol name, port name) 18 19 从 socket