CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 1/90
Plataforma e Linguagem Java +Swing
16 horas de explanação, diálogo e prática
Julho 2016
por Luiz Henrique Rauber Rodrigues
luizrauber@gmail.com - fb.com/luizrauber
Exceto onde tiver outra referência, este é material é Creative Commons com Atribuição-CompartilhaIgual (CC
BY-SA). Pode copiar, alterar e redistribuir à vontade, mesmo para fins comerciais, mas desde que me cite e
licenciem as novas criações sob termos idênticos. Like Free Software :)
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 2/90
.NET e C#
16 horas de explanação, diálogo e prática
Junho 2016
por Luiz Henrique Rauber Rodrigues
luizrauber@gmail.com - fb.com/luizrauber
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 3/90
Mas primeiro….
Conselhos Richard Feynman (1918-1988), Nobel de Física em 1965
2 tipos de sabedoria: “Saber o nome de algo” e o “Saber algo”
1) Escolha um conceito; tema ou objetivo do que quer saber
2) Escreva-o como se estivesse ensinando uma criança; nada subentendido
3) Volte no tema e pesquise sobre ele; especifique o 1-2 da forma 2)
4) Revise e simplifique ainda mais; sem jargões e sabendo usar analogias
http://www.bbc.com/portuguese/geral-36750825
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 4/90
Manifesto para o desenvolvimento ágil de software
Estamos descobrindo maneiras melhores de desenvolver software fazendo-o
nós mesmos e ajudando outros a fazê-lo. Através deste trabalho, passamos a
valorizar:
Indivíduos e interação entre eles mais que processos e ferramentas
Software em funcionamento mais que documentação abrangente
Colaboração com o cliente mais que negociação de contratos
Responder a mudanças mais que seguir um plano
Ou seja, mesmo havendo valor nos itens à direita, valorizamos mais os itens à
esquerda.
http://www.manifestoagil.com.br/
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 5/90
Coding Dojo - Turma 2015-2016 – Tec Informática Senac
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 6/90
Java é framework (ou plataform) que tem
outros frameworks, e também é linguagem!
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 7/90
Patrick Naughton, Mike Sheridan, e James
Gosling trabalhavam no The Green Project,
da Sun Microsystems, um projeto em 1991
pensando num pré-futuro de interligação de
coisas, algo que em 2016 chamamos de IoT
– Internet of Things.
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 8/90
Entre as criações, que era objetivo do
projeto, saiu o *7 (StarSeven), um controle
remoto touchscreem, e para tal funcionar a
equipe criou uma linguagem de
programação batizada de oak. (nome em
inglês para o que chamamos de carvalho (que alias, é
nativo de lá) só não se sabe de qual das mais de 600
espécies desta Quercus da Fagaceae.
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 9/90
https://www.youtube.com/watch?v=Ahg8OBYixL0
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 10/90
https://www.youtube.com/watch?v=Ahg8OBYixL0
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 11/90
*7 falhou, mas tinham os pequenos
aplicativos, que migraram pra web, e os
applets falharam, mas ficou o Java!
Sun Microsystems – James Gosling – 1995
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 12/90
Linguagem Java foi feita para a plataforma
Java “Write Once, Run Anywhere – WORA”
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 13/90
“Since 1995, Java has changed our
world . . . and our expectations..”
http://www.oracle.com/technetwork/java/jav
ase/overview/javahistory-index-
198355.html
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 14/90
Linguagem Java sobre GPL – 13/11/2006
JDK sobre GPL – 08/05/2007
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 15/90
OO – altamente tipada, tudo é baseado em
objetos (Object Model)
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 16/90
Interpretado – Fonte pra bytecode por
compilação e bytecode pra SO Just-In-Time
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 17/90
Multi-plataforma e Multi-arquitetura e
Portável – Bytecode compilado pra JVM ou
web
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 18/90
Segurança – encriptação por chave
pública (assimétrica), dificulta virus,
falsificação.
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 19/90
Robustez – verificação de erro e tempo de
execução em “tempo de compilação”
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 20/90
Multi-thread – feature para desenvolvedor
poder programar com recurso multi task
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 21/90
Local/ distribuído, dinâmico – roda aplicação
isolada ou na internet, ou sobre ela, run-
time
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 22/90
Mágica Java
.java
.class
.jar
Multiplataforma
Monoplataforma
Multiplataforma
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 23/90
Mágica Java
JDK
JRE
JVM
Monoplataforma
Monoplataforma
Monoplataforma
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 24/90
http://4.bp.blogspot.com/-DqJ88qjRZqQ/TZN648rP6WI/AAAAAAAAAAo/Bb2YQDMZDyw/s1600/IMG_5788.JPG
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 25/90
Ilustração : http://pt.slideshare.net/hujak/hujak-java-2012-conference-keynote-java-strategy-
roadmap-weblogic-glassfish-weblogic-glassfish-duko-vukmanovi
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 26/90
JVM especificada pela Oracle
https://en.wikipedia.org/wiki/List_of_Java_v
irtual_machines
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 27/90
JRE + JVM
http://java.com/pt_BR/
http://java.com/en/download/whatis_java.jsp
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 28/90
Oracle Academy Java Programming
http://java.com/en/about/oracleacademy.jsp
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 29/90
Java + BlueJ: Teach Java technology
interactively!
http://java.com/en/java_in_action/bluej.jsp
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 30/90
Java + Greenfoot: Start learning today!
http://java.com/en/java_in_action/greenfoot.jsp
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 31/90
Java + Alice: Turning abstraction into
animation.
http://java.com/en/java_in_action/alice.jsp
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 32/90
Java Magazine
Java Community News and Events/ 'Java
in Action' (Java application stories)/ Java
Architecture/ New to Java/ Enterprise Java
Programming/ Polyglot Programming/ Rich
Client/Web Development/ Mobile and
Embedded Development
http://java.com/en/about/javamagazine.jsp
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 33/90
Oracle Java
http://www.oracle.com/technetwork/java/index.htm
l
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 34/90
Java Community Process
https://www.jcp.org/en/home/index
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 35/90
Java 4-Ever
https://www.youtube.com/watch?
v=ehuRQ12mO9o
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 36/90
Java 8 (1.8)
http://docs.oracle.com/javase/8/
Diagrama Interativo
http://docs.oracle.com/javase/8/docs/index.html
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 37/90
http://www.oracle.com/technetwork/java/javaee/documentation
/index.html
JSR 366 - Java EE 8
JSR 367 - The Java API for JSON Binding
JSR 368 - Java Message Service 2.1
JSR 369 - Java Servlet 4.0
JSR 370 - Java API for RESTful Web Services 2.1
JSR 371 - Model-View-Controller 1.0
JSR 372 - Java Server Faces 2.3
JSR 373 - Java EE Management API 1.0
JSR 374 - Java API for JSON Processing 1.1
JSR 375 - Java EE Security API 1.0
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 38/90
http://www.oracle.com/technetwork/java/embedded/javame/in
dex.html
Java ME Embedded
Java for Mobile
Java TV
http://www.oracle.com/technetwork/java/embedded/javacard/o
verview/index.html
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 39/90
Para programar
Lógica + OO (Objetos/
Atributos(Instâncias)/ Classes/ Métodos) +
JDK + IDE
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 40/90
Para programar
Linguagem Java é Case Sensitive
Nome da classe main será o nome do
programa
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 41/90
Para programar
Umas boas práticas
NomeDaClasse
nomeDoMetodo
Variavel, variavel, $variavel, _variavel
podem ser locais ou globais
/* comentários também assim // */
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 42/90
Para programar
.java → javac → .class → javap → .java
java nomedoprograma executa,
javap mostra detalhes do fonte
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 43/90
public class MyFirstJavaProgram{
/* This is my first java program.
* This will print 'Hello World' as the output
*/
public static void main(String[]args){
System.out.println("Hello World");// prints Hello World
}
}
Hello World!
C :> javac MyFirstJavaProgram.java
C :> java MyFirstJavaProgram
HelloWorld
Tutorialspoint, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 44/90
TUTORIALSPOINT
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 45/90
public class Dog{
String breed;
int age;
String color;
void barking(){
}
void hungry(){
}
void sleeping(){
}
}
Tutorialspoint, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 46/90
public class Puppy{
public Puppy(){
}
public Puppy(String name){
// This constructor has one parameter, name.
}
}
Tutorialspoint, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 47/90
public class Puppy{
public Puppy(String name){
System.out.println("Passed Name is :"+ name );
}
public static void main(String[] args){
Puppy myPuppy =new Puppy("tommy");
}
}
PassedNameis:tommy
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 48/90
public class Puppy{
int puppyAge;
public Puppy(String name){
System.out.println("Passed Name is
:"+ name );
}
public void setAge(int age ){
puppyAge = age;
}
public int getAge(){
System.out.println("Puppy's age
is :"+ puppyAge );
return puppyAge;
PassedName is:tommy
Puppy's age is :2
Variable Value :2
public static void main(String[]args){
Puppy myPuppy =new
Puppy("tommy");
myPuppy.setAge(2);
myPuppy.getAge();
System.out.println("Variable
Value :"+ myPuppy.puppyAge );
}
}
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 49/90
import java.util.Scanner;
public class Entrada {
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
String printar;
System.out.print("Printa o escrito pelo usuario ");
printar = entrada.nextLine(); //nextFloat, nextInt
System.out.println("Digitado: " +printar+ " !");
}
}
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 50/90public class Employee{
String name;
int age;
String designation;
double salary;
public Employee(String name){
this.name = name;
}
public void empAge(int empAge){
age = empAge;
}
public void empDesignation(String empDesig){
designation = empDesig;
}
public void empSalary(double empSalary){
salary = empSalary;
}
public void printEmployee(){
System.out.println("Name:"+ name );
System.out.println("Age:"+ age );
System.out.println("Designation:"+ designation );
System.out.println("Salary:"+ salary);
}
}
Age: 26
Designation:SeniorSoftwareEngineer
Salary: 1000.0
Name:MaryAnne
Age: 21
Designation:SoftwareEngineer
Salary: 500.0
public static void main(String args[]){
Employee empOne =new Employee("James Smith");
Employee empTwo =new Employee("Mary Anne");
empOne.empAge( 26 );
empOne.empDesignation("Senior Software
Engineer");
empOne.empSalary( 1000 );
empOne.printEmployee();
empTwo.empAge( 21 );
empTwo.empDesignation("Software Engineer");
empTwo.empSalary( 500 );
empTwo.printEmployee();
}
}
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 51/90public class Employee{
String name;
int age;
String designation;
double salary;
public Employee(String name){
this.name = name;
}
public void empAge(int empAge){
age = empAge;
}
public void empDesignation(String empDesig){
designation = empDesig;
}
public void empSalary(double empSalary){
salary = empSalary;
}
public void printEmployee(){
System.out.println("Name:"+ name );
System.out.println("Age:"+ age );
System.out.println("Designation:"+ designation );
System.out.println("Salary:"+ salary);
}
}
Age: 26
Designation:SeniorSoftwareEngineer
Salary: 1000.0
Name:MaryAnne
Age: 21
Designation:SoftwareEngineer
Salary: 500.0
public class EmployeeTest{
}
public staticvoid main(String args[]){
Employee empOne =new Employee("James Smith");
Employee empTwo =new Employee("Mary Anne");
empOne.empAge( 26 );
empOne.empDesignation("Senior Software
Engineer");
empOne.empSalary( 1000 );
empOne.printEmployee();
empTwo.empAge( 21 );
empTwo.empDesignation("Software Engineer");
empTwo.empSalary( 500 );
empTwo.printEmployee();
}
}
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 52/90public class Employee{
String name;
int age;
String designation;
double salary;
public Employee(String name){
this.name = name;
}
public void empAge(int empAge){
age = empAge;
}
public void empDesignation(String empDesig){
designation = empDesig;
}
public void empSalary(double empSalary){
salary = empSalary;
}
public void printEmployee(){
System.out.println("Name:"+ name );
System.out.println("Age:"+ age );
System.out.println("Designation:"+ designation );
System.out.println("Salary:"+ salary);
}
}
Age: 26
Designation:SeniorSoftwareEngineer
Salary: 1000.0
Name:MaryAnne
Age: 21
Designation:SoftwareEngineer
Salary: 500.0
public class EmployeeTest{
public staticvoid main(String args[]){
Employee empOne =new Employee("James Smith");
Employee empTwo =new Employee("Mary Anne");
empOne.empAge( 26 );
empOne.empDesignation("Senior Software
Engineer");
empOne.empSalary( 1000 );
empOne.printEmployee();
empTwo.empAge( 21 );
empTwo.empDesignation("Software Engineer");
empTwo.empSalary( 500 );
empTwo.printEmployee();
}
}
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 53/90
Employee.java contendo main na mesma classe
Employee.java contendo uma classe EmployeeTest
Employee.java sem main então a EmployeeTest.java é principal
Atenção ao encapsulamento e aos modificadores :)
default, public, protected, private
Tutorialspoint, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 54/90
• Métodos declarados público em uma superclasse também devem
ser públicos em todas as subclasses.
• Métodos declarada protegida em uma superclasse ou deve ser
protegido ou público em subclasses; eles não podem ser
Privado.
• Métodos declarados, sem controlo de acesso (nenhum
modificador foi usado) pode ser declarado mais privado em
subclasses.
• Métodos declarados privado não são herdadas em tudo, então
não há nenhuma regra para eles.
Tutorialspoint, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 55/90
Resumo modificadores de acesso
• default - Visível para o pacote. Sem modificadores necessários.
• private - Visível só para a classe.
• public - Visível para o mundo.
• protected - Visível para o pacote e todas as subclasses.
Tutorialspoint, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 56/90
Resumo não modificadores de acesso
• O modificador static é para a criação de métodos e variáveis de
classe
● O modificador final é para finalizar as implementações de
classes, métodos e variáveis.
● O modificador abstract é para criar classes e métodos abstratos.
● Os synchronized e volatile são usados para threads.
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 57/90
TutorialsPoint: C#, 2014
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 58/90
TutorialsPoint: C#, 2014
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 59/90
public class Test{
public static void main(String args[]){
int x =10;
if( x <20){
System.out.print("This is if statement");
}
}
}
This is if statement
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 60/90
public class Test{
public static void main(String args[]){
int x =30;
int y =10;
if( x ==30){
if( y ==10){
System.out.print("X = 30 and Y = 10");
}
}
}
}
X = 30 and Y = 10
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 61/90
public class Test{
public static void main(String args[]){
int x =30;
if(x <20){
System.out.print("This is if statement");
}else{
System.out.print("This is else statement");
}
}
}
Thisiselse statement
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 62/90
public class Test{
public static void main(String args[]){
int x =30;
if( x ==10){
System.out.print("Value of X is 10");
}elseif( x ==20){
System.out.print("Value of X is 20");
}elseif( x ==30){
System.out.print("Value of X is 30");
}else{
System.out.print("This is else statement");
}
}
} Value of X is30
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 63/90
public class Test{
public static void main(String args[]){
char grade = args[0].charAt(0);
switch(grade) {
case'A': System.out.println("Excellent!"); break;
case'B':
case'C': System.out.println("Well done"); break;
case'D': System.out.println("You passed"); break;
Case'F': System.out.println("Better try again"); break;
default: System.out.println("Invalid grade"); break
}
System.out.println("Your grade is "+ grade);
}
}
Your grade is A
Excellent!
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 64/90
public class Test{
public static void main(String args[]){
int x =10;
while( x <20){
System.out.print("value of x : "+ x );
x++;
System.out.print("n");
}
}
}
value of x :10
…
value of x :19
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 65/90
public class Test{
public static void main(String args[]){
int x =10;
do{
System.out.print("value of x : "+ x );
x++;
System.out.print("n");
}while( x <20);
}
} value of x :10
…
value of x :19
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 66/90
public class Test{
public static void main(String args[]){
for(int x =10; x <20; x = x+1){
System.out.print("value of x : "+ x );
System.out.print("n");
}
}
}
value of x :10
…
value of x :19
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 67/90
public class Test{
public static void main(String args[]){
int[] numbers ={10,20,30,40,50};
for(int x : numbers){
System.out.print( x );
}
}
}
1020304050
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 68/90
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 69/90
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 70/90
public class Test{
public static void main(String args[]){
int[] numbers ={10,20,30,40,50};
for(int x : numbers){
if(x ==30){
break;
}
System.out.print( x );
System.out.print("n");
}
}
}
10
20
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 71/90
public class Test{
public static void main(String args[]){
int[] numbers ={10,20,30,40,50};
for(int x : numbers){
if( x ==30){
continue;
}
System.out.print( x );
System.out.print("n");
}
}
}
10
20
40
50Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 72/90
public class TestArray{
public static void main(String[] args){
double[] myList ={1.9,2.9,3.4,3.5};
for(double element: myList){
System.out.println(element);
}
}
}
1.9
2.9
3.4
3.5Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 73/90
public class Test{
public static void main(String args[]){
int[] numbers ={10,20,30,40,50};
for(int x : numbers ){
System.out.print(x);
System.out.print(",");
}
System.out.print("n");
String[] names ={"James","Larry","Tom","Lacy"};
for(String name : names ){
System.out.print( name );
System.out.print(",");
}
}
}
10,20,30,40,50,
James,Larry,Tom,Lacy,
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 74/90
public class TestArray{
public static void main(String[] args){
double[] myList ={1.9,2.9,3.4,3.5};
for(int i =0; i < myList.length; i++){
System.out.println(myList[i]+" ");
}
double total =0;
for(int i =0; i < myList.length; i++){
total += myList[i];
}
System.out.println("Total is "+ total);
double max = myList[0];
for(int i =1; i < myList.length; i++){
if(myList[i]> max) max = myList[i];
}
System.out.println("Max is "+ max);
}
}
1.9
2.9
3.4
3.5
Totalis11.7
Maxis3.5
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 75/90
public static void printArray(int[] array){
for(int i =0; i < array.length; i++){
System.out.print(array[i]+" ");
}
}
objeto.printArray(newint[]{3,1,2,6,4,2});
public static int[] reverse(int[] list){
int[] result =new int[list.length];
for(int i =0, j = result.length -1; i < list.length; i++, j--){
result[j]= list[i];
}
return result;
}
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 76/90
public class Test{
public static void main(String args[]){
Integer x =5;
System.out.println( x.byteValue());
System.out.println(x.doubleValue());
System.out.println( x.longValue());
}
}
5
5.0
5Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 77/90
compareTo()
equals()
toString()
parseInt()
random()
…
Pag 69-94
10,20,30,40,50,
James,Larry,Tom,Lacy,
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 78/90
public class StringDemo{
public static void main(String args[]){
String string1 ="saw I was ";
System.out.println("Dot "+ string1 +"Tod");
}
}
Dot saw I was Tod
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 79/90
public class StringDemo{
public static void main(String args[]){
char[] helloArray ={'h','e','l','l','o','.'};
String helloString =new String(helloArray);
System.out.println(helloString);
}
}
hello.
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 80/90
int compareTo(Object o)
int compareTo(String anotherString)
String concat(String str)
static String copyValueOf(char[] data)
int length()
String toUpperCase()
…
Pag 105-156
.
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 81/90
Class FreshJuice{
enum FreshJuiceSize{ SMALL, MEDUIM, LARGE }
FreshJuiceSize size;
public static void main(String args[]){
FreshJuice juice =new FreshJuice();
juice.size =FreshJuice.FreshJuiceSize.MEDUIM;
System.out.println("Tamanho do Suco:" +juice.size);
}
}
Tamanho do Suco: MEDIUM
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 82/90
public class Employee{
private static double salary;
public static final String DEPARTMENT = "Development ";
public static void main(String args[]){
salary = 1000;
System.out.println(DEPARTMENT+"average salary:"+salary);
}
}
Development average salary:1000
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 83/90
public class Animal{
}
public class Mammal extends Animal{
}
public class Reptile extends Animal{
}
public class Dog extends Mammal{
}
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 84/90
public class Dog extends Mammal{
public static void main(String args[]){
Animal a =new Animal();
Mammal m =new Mammal();
Dog d =new Dog();
System.out.println(m instanceof Animal);
System.out.println(d instanceof Mammal);
System.out.println(d instanceof Animal);
}
} true
true
trueTutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 85/90
public interface Animal{}
public class Mammal implements Animal{
}
public class Dog extends Mammal{
}
Tutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 86/90
Interface Animal{}
class Mammal implements Animal{}
public class Dog extends Mammal{
public static void main(String args[]){
Mammal m =new Mammal();
Dog d =new Dog();
System.out.println(m instanceof Animal);
System.out.println(d instanceof Mammal);
System.out.println(d instanceof Animal);
}
}
true
true
trueTutorialspoint Java, 2015
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 87/90
Abrir o Netbeans
Olhar pra ele, ignorar e abrir um “Word”
e criar um projeto pra premissas de
Gerenciamento de Projeto
(recomendo Plan. GP com TA e Riscos)
:)
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 88/90
Agora sim
Criar o Projeto
Desenvolver a aplicação
Discutirmos os resultados
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 89/90
Agora transformar para swing
1 – de leve
2 – com paleta
CC BY-SA luizrauber@gmail.com || fb.com/luizrauber 90/90
1 – de leve
variavelString =
JoptionPane.showInputDialog("mensagem");
variavelInteiro =
Integer.parseInt(JOptionPane.showInputDialog("mensag
em"));
JOptionPane.showMessageDialog(null,
"mensagem”);
Ambos pode “mensagem”+variavel+”mensagem”

Plataforma e Lingaguem Java + Swing

  • 1.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 1/90 Plataforma e Linguagem Java +Swing 16 horas de explanação, diálogo e prática Julho 2016 por Luiz Henrique Rauber Rodrigues luizrauber@gmail.com - fb.com/luizrauber Exceto onde tiver outra referência, este é material é Creative Commons com Atribuição-CompartilhaIgual (CC BY-SA). Pode copiar, alterar e redistribuir à vontade, mesmo para fins comerciais, mas desde que me cite e licenciem as novas criações sob termos idênticos. Like Free Software :)
  • 2.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 2/90 .NET e C# 16 horas de explanação, diálogo e prática Junho 2016 por Luiz Henrique Rauber Rodrigues luizrauber@gmail.com - fb.com/luizrauber
  • 3.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 3/90 Mas primeiro…. Conselhos Richard Feynman (1918-1988), Nobel de Física em 1965 2 tipos de sabedoria: “Saber o nome de algo” e o “Saber algo” 1) Escolha um conceito; tema ou objetivo do que quer saber 2) Escreva-o como se estivesse ensinando uma criança; nada subentendido 3) Volte no tema e pesquise sobre ele; especifique o 1-2 da forma 2) 4) Revise e simplifique ainda mais; sem jargões e sabendo usar analogias http://www.bbc.com/portuguese/geral-36750825
  • 4.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 4/90 Manifesto para o desenvolvimento ágil de software Estamos descobrindo maneiras melhores de desenvolver software fazendo-o nós mesmos e ajudando outros a fazê-lo. Através deste trabalho, passamos a valorizar: Indivíduos e interação entre eles mais que processos e ferramentas Software em funcionamento mais que documentação abrangente Colaboração com o cliente mais que negociação de contratos Responder a mudanças mais que seguir um plano Ou seja, mesmo havendo valor nos itens à direita, valorizamos mais os itens à esquerda. http://www.manifestoagil.com.br/
  • 5.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 5/90 Coding Dojo - Turma 2015-2016 – Tec Informática Senac
  • 6.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 6/90 Java é framework (ou plataform) que tem outros frameworks, e também é linguagem!
  • 7.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 7/90 Patrick Naughton, Mike Sheridan, e James Gosling trabalhavam no The Green Project, da Sun Microsystems, um projeto em 1991 pensando num pré-futuro de interligação de coisas, algo que em 2016 chamamos de IoT – Internet of Things.
  • 8.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 8/90 Entre as criações, que era objetivo do projeto, saiu o *7 (StarSeven), um controle remoto touchscreem, e para tal funcionar a equipe criou uma linguagem de programação batizada de oak. (nome em inglês para o que chamamos de carvalho (que alias, é nativo de lá) só não se sabe de qual das mais de 600 espécies desta Quercus da Fagaceae.
  • 9.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 9/90 https://www.youtube.com/watch?v=Ahg8OBYixL0
  • 10.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 10/90 https://www.youtube.com/watch?v=Ahg8OBYixL0
  • 11.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 11/90 *7 falhou, mas tinham os pequenos aplicativos, que migraram pra web, e os applets falharam, mas ficou o Java! Sun Microsystems – James Gosling – 1995
  • 12.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 12/90 Linguagem Java foi feita para a plataforma Java “Write Once, Run Anywhere – WORA”
  • 13.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 13/90 “Since 1995, Java has changed our world . . . and our expectations..” http://www.oracle.com/technetwork/java/jav ase/overview/javahistory-index- 198355.html
  • 14.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 14/90 Linguagem Java sobre GPL – 13/11/2006 JDK sobre GPL – 08/05/2007
  • 15.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 15/90 OO – altamente tipada, tudo é baseado em objetos (Object Model)
  • 16.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 16/90 Interpretado – Fonte pra bytecode por compilação e bytecode pra SO Just-In-Time
  • 17.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 17/90 Multi-plataforma e Multi-arquitetura e Portável – Bytecode compilado pra JVM ou web
  • 18.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 18/90 Segurança – encriptação por chave pública (assimétrica), dificulta virus, falsificação.
  • 19.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 19/90 Robustez – verificação de erro e tempo de execução em “tempo de compilação”
  • 20.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 20/90 Multi-thread – feature para desenvolvedor poder programar com recurso multi task
  • 21.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 21/90 Local/ distribuído, dinâmico – roda aplicação isolada ou na internet, ou sobre ela, run- time
  • 22.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 22/90 Mágica Java .java .class .jar Multiplataforma Monoplataforma Multiplataforma
  • 23.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 23/90 Mágica Java JDK JRE JVM Monoplataforma Monoplataforma Monoplataforma
  • 24.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 24/90 http://4.bp.blogspot.com/-DqJ88qjRZqQ/TZN648rP6WI/AAAAAAAAAAo/Bb2YQDMZDyw/s1600/IMG_5788.JPG
  • 25.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 25/90 Ilustração : http://pt.slideshare.net/hujak/hujak-java-2012-conference-keynote-java-strategy- roadmap-weblogic-glassfish-weblogic-glassfish-duko-vukmanovi
  • 26.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 26/90 JVM especificada pela Oracle https://en.wikipedia.org/wiki/List_of_Java_v irtual_machines
  • 27.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 27/90 JRE + JVM http://java.com/pt_BR/ http://java.com/en/download/whatis_java.jsp
  • 28.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 28/90 Oracle Academy Java Programming http://java.com/en/about/oracleacademy.jsp
  • 29.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 29/90 Java + BlueJ: Teach Java technology interactively! http://java.com/en/java_in_action/bluej.jsp
  • 30.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 30/90 Java + Greenfoot: Start learning today! http://java.com/en/java_in_action/greenfoot.jsp
  • 31.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 31/90 Java + Alice: Turning abstraction into animation. http://java.com/en/java_in_action/alice.jsp
  • 32.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 32/90 Java Magazine Java Community News and Events/ 'Java in Action' (Java application stories)/ Java Architecture/ New to Java/ Enterprise Java Programming/ Polyglot Programming/ Rich Client/Web Development/ Mobile and Embedded Development http://java.com/en/about/javamagazine.jsp
  • 33.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 33/90 Oracle Java http://www.oracle.com/technetwork/java/index.htm l
  • 34.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 34/90 Java Community Process https://www.jcp.org/en/home/index
  • 35.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 35/90 Java 4-Ever https://www.youtube.com/watch? v=ehuRQ12mO9o
  • 36.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 36/90 Java 8 (1.8) http://docs.oracle.com/javase/8/ Diagrama Interativo http://docs.oracle.com/javase/8/docs/index.html
  • 37.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 37/90 http://www.oracle.com/technetwork/java/javaee/documentation /index.html JSR 366 - Java EE 8 JSR 367 - The Java API for JSON Binding JSR 368 - Java Message Service 2.1 JSR 369 - Java Servlet 4.0 JSR 370 - Java API for RESTful Web Services 2.1 JSR 371 - Model-View-Controller 1.0 JSR 372 - Java Server Faces 2.3 JSR 373 - Java EE Management API 1.0 JSR 374 - Java API for JSON Processing 1.1 JSR 375 - Java EE Security API 1.0
  • 38.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 38/90 http://www.oracle.com/technetwork/java/embedded/javame/in dex.html Java ME Embedded Java for Mobile Java TV http://www.oracle.com/technetwork/java/embedded/javacard/o verview/index.html
  • 39.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 39/90 Para programar Lógica + OO (Objetos/ Atributos(Instâncias)/ Classes/ Métodos) + JDK + IDE
  • 40.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 40/90 Para programar Linguagem Java é Case Sensitive Nome da classe main será o nome do programa
  • 41.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 41/90 Para programar Umas boas práticas NomeDaClasse nomeDoMetodo Variavel, variavel, $variavel, _variavel podem ser locais ou globais /* comentários também assim // */
  • 42.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 42/90 Para programar .java → javac → .class → javap → .java java nomedoprograma executa, javap mostra detalhes do fonte
  • 43.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 43/90 public class MyFirstJavaProgram{ /* This is my first java program. * This will print 'Hello World' as the output */ public static void main(String[]args){ System.out.println("Hello World");// prints Hello World } } Hello World! C :> javac MyFirstJavaProgram.java C :> java MyFirstJavaProgram HelloWorld Tutorialspoint, 2015
  • 44.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 44/90 TUTORIALSPOINT
  • 45.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 45/90 public class Dog{ String breed; int age; String color; void barking(){ } void hungry(){ } void sleeping(){ } } Tutorialspoint, 2015
  • 46.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 46/90 public class Puppy{ public Puppy(){ } public Puppy(String name){ // This constructor has one parameter, name. } } Tutorialspoint, 2015
  • 47.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 47/90 public class Puppy{ public Puppy(String name){ System.out.println("Passed Name is :"+ name ); } public static void main(String[] args){ Puppy myPuppy =new Puppy("tommy"); } } PassedNameis:tommy
  • 48.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 48/90 public class Puppy{ int puppyAge; public Puppy(String name){ System.out.println("Passed Name is :"+ name ); } public void setAge(int age ){ puppyAge = age; } public int getAge(){ System.out.println("Puppy's age is :"+ puppyAge ); return puppyAge; PassedName is:tommy Puppy's age is :2 Variable Value :2 public static void main(String[]args){ Puppy myPuppy =new Puppy("tommy"); myPuppy.setAge(2); myPuppy.getAge(); System.out.println("Variable Value :"+ myPuppy.puppyAge ); } }
  • 49.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 49/90 import java.util.Scanner; public class Entrada { public static void main(String[] args) { Scanner entrada = new Scanner(System.in); String printar; System.out.print("Printa o escrito pelo usuario "); printar = entrada.nextLine(); //nextFloat, nextInt System.out.println("Digitado: " +printar+ " !"); } }
  • 50.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 50/90public class Employee{ String name; int age; String designation; double salary; public Employee(String name){ this.name = name; } public void empAge(int empAge){ age = empAge; } public void empDesignation(String empDesig){ designation = empDesig; } public void empSalary(double empSalary){ salary = empSalary; } public void printEmployee(){ System.out.println("Name:"+ name ); System.out.println("Age:"+ age ); System.out.println("Designation:"+ designation ); System.out.println("Salary:"+ salary); } } Age: 26 Designation:SeniorSoftwareEngineer Salary: 1000.0 Name:MaryAnne Age: 21 Designation:SoftwareEngineer Salary: 500.0 public static void main(String args[]){ Employee empOne =new Employee("James Smith"); Employee empTwo =new Employee("Mary Anne"); empOne.empAge( 26 ); empOne.empDesignation("Senior Software Engineer"); empOne.empSalary( 1000 ); empOne.printEmployee(); empTwo.empAge( 21 ); empTwo.empDesignation("Software Engineer"); empTwo.empSalary( 500 ); empTwo.printEmployee(); } }
  • 51.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 51/90public class Employee{ String name; int age; String designation; double salary; public Employee(String name){ this.name = name; } public void empAge(int empAge){ age = empAge; } public void empDesignation(String empDesig){ designation = empDesig; } public void empSalary(double empSalary){ salary = empSalary; } public void printEmployee(){ System.out.println("Name:"+ name ); System.out.println("Age:"+ age ); System.out.println("Designation:"+ designation ); System.out.println("Salary:"+ salary); } } Age: 26 Designation:SeniorSoftwareEngineer Salary: 1000.0 Name:MaryAnne Age: 21 Designation:SoftwareEngineer Salary: 500.0 public class EmployeeTest{ } public staticvoid main(String args[]){ Employee empOne =new Employee("James Smith"); Employee empTwo =new Employee("Mary Anne"); empOne.empAge( 26 ); empOne.empDesignation("Senior Software Engineer"); empOne.empSalary( 1000 ); empOne.printEmployee(); empTwo.empAge( 21 ); empTwo.empDesignation("Software Engineer"); empTwo.empSalary( 500 ); empTwo.printEmployee(); } }
  • 52.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 52/90public class Employee{ String name; int age; String designation; double salary; public Employee(String name){ this.name = name; } public void empAge(int empAge){ age = empAge; } public void empDesignation(String empDesig){ designation = empDesig; } public void empSalary(double empSalary){ salary = empSalary; } public void printEmployee(){ System.out.println("Name:"+ name ); System.out.println("Age:"+ age ); System.out.println("Designation:"+ designation ); System.out.println("Salary:"+ salary); } } Age: 26 Designation:SeniorSoftwareEngineer Salary: 1000.0 Name:MaryAnne Age: 21 Designation:SoftwareEngineer Salary: 500.0 public class EmployeeTest{ public staticvoid main(String args[]){ Employee empOne =new Employee("James Smith"); Employee empTwo =new Employee("Mary Anne"); empOne.empAge( 26 ); empOne.empDesignation("Senior Software Engineer"); empOne.empSalary( 1000 ); empOne.printEmployee(); empTwo.empAge( 21 ); empTwo.empDesignation("Software Engineer"); empTwo.empSalary( 500 ); empTwo.printEmployee(); } }
  • 53.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 53/90 Employee.java contendo main na mesma classe Employee.java contendo uma classe EmployeeTest Employee.java sem main então a EmployeeTest.java é principal Atenção ao encapsulamento e aos modificadores :) default, public, protected, private Tutorialspoint, 2015
  • 54.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 54/90 • Métodos declarados público em uma superclasse também devem ser públicos em todas as subclasses. • Métodos declarada protegida em uma superclasse ou deve ser protegido ou público em subclasses; eles não podem ser Privado. • Métodos declarados, sem controlo de acesso (nenhum modificador foi usado) pode ser declarado mais privado em subclasses. • Métodos declarados privado não são herdadas em tudo, então não há nenhuma regra para eles. Tutorialspoint, 2015
  • 55.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 55/90 Resumo modificadores de acesso • default - Visível para o pacote. Sem modificadores necessários. • private - Visível só para a classe. • public - Visível para o mundo. • protected - Visível para o pacote e todas as subclasses. Tutorialspoint, 2015
  • 56.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 56/90 Resumo não modificadores de acesso • O modificador static é para a criação de métodos e variáveis de classe ● O modificador final é para finalizar as implementações de classes, métodos e variáveis. ● O modificador abstract é para criar classes e métodos abstratos. ● Os synchronized e volatile são usados para threads. Tutorialspoint Java, 2015
  • 57.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 57/90 TutorialsPoint: C#, 2014
  • 58.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 58/90 TutorialsPoint: C#, 2014
  • 59.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 59/90 public class Test{ public static void main(String args[]){ int x =10; if( x <20){ System.out.print("This is if statement"); } } } This is if statement Tutorialspoint Java, 2015
  • 60.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 60/90 public class Test{ public static void main(String args[]){ int x =30; int y =10; if( x ==30){ if( y ==10){ System.out.print("X = 30 and Y = 10"); } } } } X = 30 and Y = 10 Tutorialspoint Java, 2015
  • 61.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 61/90 public class Test{ public static void main(String args[]){ int x =30; if(x <20){ System.out.print("This is if statement"); }else{ System.out.print("This is else statement"); } } } Thisiselse statement Tutorialspoint Java, 2015
  • 62.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 62/90 public class Test{ public static void main(String args[]){ int x =30; if( x ==10){ System.out.print("Value of X is 10"); }elseif( x ==20){ System.out.print("Value of X is 20"); }elseif( x ==30){ System.out.print("Value of X is 30"); }else{ System.out.print("This is else statement"); } } } Value of X is30 Tutorialspoint Java, 2015
  • 63.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 63/90 public class Test{ public static void main(String args[]){ char grade = args[0].charAt(0); switch(grade) { case'A': System.out.println("Excellent!"); break; case'B': case'C': System.out.println("Well done"); break; case'D': System.out.println("You passed"); break; Case'F': System.out.println("Better try again"); break; default: System.out.println("Invalid grade"); break } System.out.println("Your grade is "+ grade); } } Your grade is A Excellent! Tutorialspoint Java, 2015
  • 64.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 64/90 public class Test{ public static void main(String args[]){ int x =10; while( x <20){ System.out.print("value of x : "+ x ); x++; System.out.print("n"); } } } value of x :10 … value of x :19 Tutorialspoint Java, 2015
  • 65.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 65/90 public class Test{ public static void main(String args[]){ int x =10; do{ System.out.print("value of x : "+ x ); x++; System.out.print("n"); }while( x <20); } } value of x :10 … value of x :19 Tutorialspoint Java, 2015
  • 66.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 66/90 public class Test{ public static void main(String args[]){ for(int x =10; x <20; x = x+1){ System.out.print("value of x : "+ x ); System.out.print("n"); } } } value of x :10 … value of x :19 Tutorialspoint Java, 2015
  • 67.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 67/90 public class Test{ public static void main(String args[]){ int[] numbers ={10,20,30,40,50}; for(int x : numbers){ System.out.print( x ); } } } 1020304050 Tutorialspoint Java, 2015
  • 68.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 68/90 Tutorialspoint Java, 2015
  • 69.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 69/90 Tutorialspoint Java, 2015
  • 70.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 70/90 public class Test{ public static void main(String args[]){ int[] numbers ={10,20,30,40,50}; for(int x : numbers){ if(x ==30){ break; } System.out.print( x ); System.out.print("n"); } } } 10 20 Tutorialspoint Java, 2015
  • 71.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 71/90 public class Test{ public static void main(String args[]){ int[] numbers ={10,20,30,40,50}; for(int x : numbers){ if( x ==30){ continue; } System.out.print( x ); System.out.print("n"); } } } 10 20 40 50Tutorialspoint Java, 2015
  • 72.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 72/90 public class TestArray{ public static void main(String[] args){ double[] myList ={1.9,2.9,3.4,3.5}; for(double element: myList){ System.out.println(element); } } } 1.9 2.9 3.4 3.5Tutorialspoint Java, 2015
  • 73.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 73/90 public class Test{ public static void main(String args[]){ int[] numbers ={10,20,30,40,50}; for(int x : numbers ){ System.out.print(x); System.out.print(","); } System.out.print("n"); String[] names ={"James","Larry","Tom","Lacy"}; for(String name : names ){ System.out.print( name ); System.out.print(","); } } } 10,20,30,40,50, James,Larry,Tom,Lacy, Tutorialspoint Java, 2015
  • 74.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 74/90 public class TestArray{ public static void main(String[] args){ double[] myList ={1.9,2.9,3.4,3.5}; for(int i =0; i < myList.length; i++){ System.out.println(myList[i]+" "); } double total =0; for(int i =0; i < myList.length; i++){ total += myList[i]; } System.out.println("Total is "+ total); double max = myList[0]; for(int i =1; i < myList.length; i++){ if(myList[i]> max) max = myList[i]; } System.out.println("Max is "+ max); } } 1.9 2.9 3.4 3.5 Totalis11.7 Maxis3.5 Tutorialspoint Java, 2015
  • 75.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 75/90 public static void printArray(int[] array){ for(int i =0; i < array.length; i++){ System.out.print(array[i]+" "); } } objeto.printArray(newint[]{3,1,2,6,4,2}); public static int[] reverse(int[] list){ int[] result =new int[list.length]; for(int i =0, j = result.length -1; i < list.length; i++, j--){ result[j]= list[i]; } return result; } Tutorialspoint Java, 2015
  • 76.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 76/90 public class Test{ public static void main(String args[]){ Integer x =5; System.out.println( x.byteValue()); System.out.println(x.doubleValue()); System.out.println( x.longValue()); } } 5 5.0 5Tutorialspoint Java, 2015
  • 77.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 77/90 compareTo() equals() toString() parseInt() random() … Pag 69-94 10,20,30,40,50, James,Larry,Tom,Lacy, Tutorialspoint Java, 2015
  • 78.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 78/90 public class StringDemo{ public static void main(String args[]){ String string1 ="saw I was "; System.out.println("Dot "+ string1 +"Tod"); } } Dot saw I was Tod Tutorialspoint Java, 2015
  • 79.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 79/90 public class StringDemo{ public static void main(String args[]){ char[] helloArray ={'h','e','l','l','o','.'}; String helloString =new String(helloArray); System.out.println(helloString); } } hello. Tutorialspoint Java, 2015
  • 80.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 80/90 int compareTo(Object o) int compareTo(String anotherString) String concat(String str) static String copyValueOf(char[] data) int length() String toUpperCase() … Pag 105-156 . Tutorialspoint Java, 2015
  • 81.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 81/90 Class FreshJuice{ enum FreshJuiceSize{ SMALL, MEDUIM, LARGE } FreshJuiceSize size; public static void main(String args[]){ FreshJuice juice =new FreshJuice(); juice.size =FreshJuice.FreshJuiceSize.MEDUIM; System.out.println("Tamanho do Suco:" +juice.size); } } Tamanho do Suco: MEDIUM Tutorialspoint Java, 2015
  • 82.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 82/90 public class Employee{ private static double salary; public static final String DEPARTMENT = "Development "; public static void main(String args[]){ salary = 1000; System.out.println(DEPARTMENT+"average salary:"+salary); } } Development average salary:1000 Tutorialspoint Java, 2015
  • 83.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 83/90 public class Animal{ } public class Mammal extends Animal{ } public class Reptile extends Animal{ } public class Dog extends Mammal{ } Tutorialspoint Java, 2015
  • 84.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 84/90 public class Dog extends Mammal{ public static void main(String args[]){ Animal a =new Animal(); Mammal m =new Mammal(); Dog d =new Dog(); System.out.println(m instanceof Animal); System.out.println(d instanceof Mammal); System.out.println(d instanceof Animal); } } true true trueTutorialspoint Java, 2015
  • 85.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 85/90 public interface Animal{} public class Mammal implements Animal{ } public class Dog extends Mammal{ } Tutorialspoint Java, 2015
  • 86.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 86/90 Interface Animal{} class Mammal implements Animal{} public class Dog extends Mammal{ public static void main(String args[]){ Mammal m =new Mammal(); Dog d =new Dog(); System.out.println(m instanceof Animal); System.out.println(d instanceof Mammal); System.out.println(d instanceof Animal); } } true true trueTutorialspoint Java, 2015
  • 87.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 87/90 Abrir o Netbeans Olhar pra ele, ignorar e abrir um “Word” e criar um projeto pra premissas de Gerenciamento de Projeto (recomendo Plan. GP com TA e Riscos) :)
  • 88.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 88/90 Agora sim Criar o Projeto Desenvolver a aplicação Discutirmos os resultados
  • 89.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 89/90 Agora transformar para swing 1 – de leve 2 – com paleta
  • 90.
    CC BY-SA luizrauber@gmail.com|| fb.com/luizrauber 90/90 1 – de leve variavelString = JoptionPane.showInputDialog("mensagem"); variavelInteiro = Integer.parseInt(JOptionPane.showInputDialog("mensag em")); JOptionPane.showMessageDialog(null, "mensagem”); Ambos pode “mensagem”+variavel+”mensagem”