Wrzucajcie tu to co macie :P ja u pani Zofii znalazłem coś takiego:
http://zofia.kruczkiewicz.staff.iiar.pw … nia1_2.pdf
ktoś to rozwiąże?:P
Jeśli ktoś ma już wieloletnie doświadczenie w zdawaniu egzaminu z JAVY u tej pani to proszę się podzielić doświadczeniami i ewentualnie jakimś materiałem :)
Offline
Zadanie 1class Osoba1 {
int wiek;
String nazwisko;
Osoba1(int wiek_, String nazwisko_) {
wiek = wiek_;
nazwisko = new String(nazwisko_);
}
void pokaz() {
System.out.print(nazwisko + ", " + wiek);
}
boolean porownaj(Osoba1 os) {
if (os.equals(this))
return true;
return false;
}
}
class Osoba2 extends Osoba1 {
int pobory;
Osoba2(int wiek_, String nazwisko_, int pobory_) {
super(wiek_, nazwisko_);
pobory = pobory_;
}
void pokaz(String menu_) {
System.out.print(menu_);
super.pokaz();
System.out.print(", " + pobory);
}
}
public class Osoba {
public static void main(String[] args) {
Osoba2 p2 = new Osoba2(20, "Kowalski", 5);
Osoba1 p1 = new Osoba1(15, "Nowak");
p2.pokaz();
p2.pokaz("nazwisko, wiek, pobory: ");
p1.pokaz();
p1.porownaj(p2);
}
}
Zadanie 2import java.util.ArrayList;
public interface Dane {
String produkt = "Typ osoby: ";
public void podaj_typ();
}
class Osoba1 implements Dane {
int wiek;
String nazwisko;
Osoba1(int wiek_, String nazwisko_) {
wiek = wiek_;
nazwisko = new String(nazwisko_);
}
void pokaz() {
System.out.println(nazwisko + ", " + wiek);
}
int podaj_pobory() {
return 0;
}
public void podaj_typ() {
System.out.println(produkt + 1);
}
boolean porownaj(Osoba1 os) {
if (wiek == os.wiek && nazwisko == os.nazwisko && podaj_pobory() == os.podaj_pobory())
return true;
return false;
}
}
class Osoba2 extends Osoba1 {
int pobory;
Osoba2(int wiek_, String nazwisko_, int pobory_) {
super(wiek_, nazwisko_);
pobory = pobory_;
}
void pokaz() {
super.pokaz();
System.out.println(podaj_pobory());
}
int podaj_pobory() {
return pobory;
}
public void podaj_typ() {
System.out.println(produkt + 2);
}
}
public class Osoba {
static ArrayList<Osoba1> dane = new ArrayList<Osoba1>();
static void wyprowadz(Osoba1 p) {
dane.add(p);
for (int i = 0; i < dane.size(); i++) {
dane.get(i).pokaz();
dane.get(i).podaj_typ();
}
}
public static void main(String[] args) {
Osoba2 p2 = new Osoba2(20, "Kowalski", 5);
Osoba1 p1 = new Osoba1(15, "Nowak");
wyprowadz(p2);
wyprowadz(p1);
p1.porownaj(p2);
p2.porownaj(p1);
p2.porownaj(p2);
p1.porownaj(p1);
}
}
Ostatnio edytowany przez celudor (2012-01-09 09:56:34)
Offline
Offline
Micah napisał:
http://zofia.kruczkiewicz.staff.iiar.pwr.wroc.pl/wyklady/java1/Pytania1.doc
http://zofia.kruczkiewicz.staff.iiar.pw … ania_0.pdf
no ten .doc to podobne zadania coś czuję, że to będzie... a to z tym uzupełnianiem też widzę fajne jest coś wspominała o tym...
Offline
W końcu zaczął się weekend i można się zabrać za to co najbardzieje lubię czyli za JAVA:)
celudor napisał:
Zadanie 1
boolean porownaj(Osoba1 os) {
if (os.equals(this))
return true;
return false;
}
Może się nie znam ale moim zdanie powinno to wyglądać tak:
boolean porownaj(Osoba1 os) {
if (getClass() == os.getClass())
return true;
return false;
}
Może jak będzie mi się nudziło to sprawdzę resztę kodu, to tak na szybko napisałem bo od razu rzuciło mi się w oczy
Offline
Dla wszystkich którzy chcą się nauczyć, nadrobić lub doszkolić polecam materiały online po angielsku. Jest tutaj pełny semestr z 2007 r. ze Standford University z Programming Methodology - Java. Wszytko za free, wykłady video online, materiały, kody i inne:
http://www.oercommons.org/courses/intro … ology/view
Szkoda, że nasza Pani Zofia tak nie prowadzi jak ten koleś.
Powodzonka wszystkim.
Offline
Baton napisał:
W końcu zaczął się weekend i można się zabrać za to co najbardzieje lubię czyli za JAVA:)
celudor napisał:
Zadanie 1
boolean porownaj(Osoba1 os) {
if (os.equals(this))
return true;
return false;
}Może się nie znam ale moim zdanie powinno to wyglądać tak:
boolean porownaj(Osoba1 os) {
if (getClass() == os.getClass())
return true;
return false;
}
Może jak będzie mi się nudziło to sprawdzę resztę kodu, to tak na szybko napisałem bo od razu rzuciło mi się w oczy
Wg mnie porównanie za pomocą metody equals() jest prawidłowe, ponieważ metoda getClass() jest wykorzystywana przez equals() w procesie porównania. Do tego metodę equals() możemy przeciążyć i napisać własne warunki kiedy to dane obiekty są takie same.
Offline
moim zdaniem różnica między waszymi porównaniami jest taka, że metoda equals sprawdza, czy oba obiekty są sobie równe (pola/atrybuty obiektu), natomiast getClass zwraca klasę obiektu. obie metody służą do porównania, tyle że innego
Offline
generalnie, jak NetBeans tworzy porównanie, to najpierw sprawdza, czy drugi obiekt nie jest pusty, potem sprawdza getClass (czy są tej samej klasy), a następnie przyrównuje poszczególne pola. jakby nie sprawdzał klasy, to możliwe, że program próbowałby przyrównać pole, którego w klasie nie ma i wyjebałby wyjątkiem.
Tutaj dla klasy Car z polem _name:
Spoiler:
public boolean equals(Object obj) {
if (obj == null) {
return false;
}
if (getClass() != obj.getClass()) {
return false;
}
final Car other = (Car) obj;
if ((this._name == null) ? (other._name != null) : !this._name.equals(other._name)) {
return false;
}
return true;
}
Offline
dzabb napisał:
generalnie, jak NetBeans tworzy porównanie, to najpierw sprawdza, czy drugi obiekt nie jest pusty, potem sprawdza getClass (czy są tej samej klasy), a następnie przyrównuje poszczególne pola. jakby nie sprawdzał klasy, to możliwe, że program próbowałby przyrównać pole, którego w klasie nie ma i wyjebałby wyjątkiem.
Tutaj dla klasy Car z polem _name:Spoiler:
public boolean equals(Object obj) {
if (obj == null) {
return false;
}
if (getClass() != obj.getClass()) {
return false;
}
final Car other = (Car) obj;
if ((this._name == null) ? (other._name != null) : !this._name.equals(other._name)) {
return false;
}
return true;
}
Nie rozumiem was. W zadaniu jest wyraźnie napisane że trzeba sprawdzić czy są tego samego typu a nie czy maja te same pola.
Więc co ma piernik do wiatraka?
Offline
package zadanie3;
import java.util.*;
import javax.swing.*;
import java.io.*;
import java.lang.*;
import java.awt.event.*;
public class Zadanie6 extends JFrame implements ActionListener
{ JButton przycisk = new JButton("Przycisk");
JTextArea tekst=new JTextArea (18,20);
String dana = new String ();
public Zadanie6(){
super("RAMKA");
setSize(400,220);
JPanel panel=new JPanel();
przycisk.addActionListener(this);
panel.add(przycisk);
panel.add(tekst);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
setContentPane(panel);
}
@Override
public void actionPerformed (ActionEvent evt){
dana="Obsługa przycisku";
tekst.setText(dana);
repaint();
}
public static void main(String[] arg) throws Exception
{ Zadanie6 pr= new Zadanie6();
pr.show();}
}
Offline
cieniu napisał:
Wrzucajcie tu to co macie :P ja u pani Zofii znalazłem coś takiego:
http://zofia.kruczkiewicz.staff.iiar.pw … nia1_2.pdf
ktoś to rozwiąże?:P
Jeśli ktoś ma już wieloletnie doświadczenie w zdawaniu egzaminu z JAVY u tej pani to proszę się podzielić doświadczeniami i ewentualnie jakimś materiałem :)
Zadanie 3
package egzamin; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; import java.util.Vector; import javax.swing.JButton; import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JTextField; public class Okienko1 extends JFrame { private Vector<String> lista = new Vector<String>(); private JTextField tytul; private JComboBox combo; public Okienko1() { super("Ksiązki"); setSize(450, 300); setVisible(true); JPanel panel = new JPanel(); JLabel podajTytulLabel = new JLabel("Podaj tytuł książki"); panel.add(podajTytulLabel); tytul = new JTextField(30); panel.add(tytul); JButton button = new JButton("Wyświetl"); panel.add(button); JLabel tytuylLabel = new JLabel("Tytuły książek"); panel.add(tytuylLabel); combo = new JComboBox(); panel.add(combo); tytul.addKeyListener(new KeyListener() { @Override public void keyTyped(KeyEvent e) { if (e.getKeyChar() == KeyEvent.VK_ENTER) { String s = tytul.getText(); if (!s.isEmpty()) lista.add(s); tytul.setText(""); } } @Override public void keyReleased(KeyEvent e) { } @Override public void keyPressed(KeyEvent e) { } }); button.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { combo.removeAllItems(); for (String s : lista) combo.addItem(s); } }); setContentPane(panel); } public static void main(String[] args) { new Okienko1(); } }
Offline