Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Objects;
- public class Plik implements Cloneable,Comparable<Plik>{
- public Plik(String nazwa, Integer rozmiar, boolean czydozap)
- {
- this.nazwa=nazwa;
- this.czyDoZapisu=czydozap;
- this.rozmiar=rozmiar;
- ile++;
- }
- public Plik(Integer rozmiar, boolean czydozap)
- {
- this.nazwa="Jakis Plik";
- this.rozmiar=rozmiar;
- this.czyDoZapisu=czydozap;
- ile++;
- }
- public String getNazwa() {
- return nazwa;
- }
- public void setNazwa(String nazwa) {
- this.nazwa = nazwa;
- }
- public Integer getRozmiar() {
- return rozmiar;
- }
- public void setRozmiar(Integer rozmiar) {
- this.rozmiar = rozmiar;
- }
- public boolean isCzyDoZapisu() {
- return czyDoZapisu;
- }
- public void setCzyDoZapisu(boolean czyDoZapisu) {
- this.czyDoZapisu = czyDoZapisu;
- }
- public static int getIle() {
- return ile;
- }
- public static void setIle(int ile) {
- Plik.ile = ile;
- }
- @Override
- public String toString()
- {
- if(this.nazwa=="Jakis Plik")
- {
- return this.getClass() + " [ " + this.rozmiar + " ][ " + this.czyDoZapisu + " ]";
- }
- else {
- return this.getClass() + "[ " + this.nazwa + " ][ " + this.rozmiar + " ][ " + this.czyDoZapisu + " ]";
- }
- }
- @Override
- public Plik clone() throws CloneNotSupportedException {
- return new Plik(this.nazwa,this.rozmiar,this.czyDoZapisu);
- }
- @Override
- public boolean equals(Object o) {
- if (this == o) return true;
- if(o==null) return false;
- if (this.getClass()==o.getClass()) {
- Plik plik = (Plik) o;
- return czyDoZapisu == plik.czyDoZapisu &&
- nazwa.equals(((Plik) o).nazwa) &&
- rozmiar.equals(((Plik) o).rozmiar);
- }
- return false;
- }
- public int compareTo(Plik plik)
- {
- int d=this.rozmiar.compareTo(plik.rozmiar);
- if(d==0)
- {
- d=this.nazwa.compareTo(plik.nazwa);
- }
- return d;
- }
- private String nazwa;
- private Integer rozmiar;
- private boolean czyDoZapisu;
- private static int ile=0;
- }
- import java.time.LocalDate;
- import java.time.format.DateTimeFormatter;
- import java.util.concurrent.atomic.AtomicLongArray;
- public class PlikVideo extends Plik implements Cloneable,Comparable<Plik> {
- public PlikVideo(String nazwa,Integer rozmiar, boolean czydozap,String rozsz)
- {
- super (nazwa,rozmiar,czydozap);
- this.rozszerzenie=rozsz;
- this.dataUtworzenia= LocalDate.now();
- }
- public void setDataUtworzenia(int r, int m, int d)
- {
- this.dataUtworzenia=LocalDate.of(r,m,d);
- }
- public LocalDate getDataUtworzenia()
- {
- return this.dataUtworzenia;
- }
- @Override
- public String toString()
- {
- return super.toString()+"[ "+this.dataUtworzenia.format(DateTimeFormatter.ISO_DATE)+"]"+"[ "+this.dataUtworzenia.getDayOfYear()+" ]"+"[ "+this.dataUtworzenia.getDayOfWeek()+" ]";
- }
- @Override
- public boolean equals(Object o)
- {
- return super.equals(o)&&this.dataUtworzenia.equals(((PlikVideo)o).dataUtworzenia)&&this.rozszerzenie.equals(((PlikVideo)o).rozszerzenie);
- }
- @Override
- public PlikVideo clone()
- {
- return new PlikVideo(getNazwa(),getRozmiar(),isCzyDoZapisu(),this.rozszerzenie);
- }
- @Override
- public int compareTo(Plik plik)
- {
- int d=super.compareTo(plik);
- PlikVideo tmp=(PlikVideo)plik;
- if(d==0)
- {
- d=this.dataUtworzenia.compareTo(tmp.dataUtworzenia);
- }
- return d;
- }
- private LocalDate dataUtworzenia;
- private String rozszerzenie;
- }
- public class Main {
- public static void main(String[] args) {
- Plik mały=new Plik("Mały Plik",100,true);
- System.out.println(mały);
- System.out.println(Plik.getIle());
- Plik średni=new Plik(500,false);
- System.out.println(średni);
- PlikVideo małyPlikVideo=new PlikVideo("Mały Film",200,false,"1");
- małyPlikVideo.setDataUtworzenia(2009,02,28);
- System.out.println(małyPlikVideo);
- System.out.println(Plik.getIle());
- Plik[][]spis=new Plik[2][2];
- spis[0][0]=średni;
- spis[0][1]=mały;
- spis[1][0]=małyPlikVideo;
- spis[1][1]=średni;
- for(int i=0;i<spis.length;i++)
- {
- for(int j=0;j<spis[i].length;j++)
- {
- System.out.println(spis[i][j]);
- }
- }
- String[]spisNazw=new String[4];
- int f=0;
- for(int i=0;i<2;i++)
- {
- for(int j=0;j<2;j++)
- {
- spisNazw[f]=spis[i][j].getNazwa();
- f++;
- }
- }
- /*for(int i=0;i<spisNazw.length;i++) test czy dobrze dodaje :v
- {
- System.out.print(spisNazw[i]+" ");
- }
- System.out.println();*/
- for(Plik[] a:spis)
- {
- for(Plik b:a)
- {
- System.out.println(b);
- }
- }
- System.out.println(średni.equals(mały));
- System.out.println(średni.equals(małyPlikVideo));
- int ileVideo=0;
- for(Plik[]a:spis)
- {
- for(Plik b:a)
- {
- if(b.getClass()==PlikVideo.class)
- {
- ileVideo++;
- }
- }
- }
- System.out.println(ileVideo);
- for(Plik[] a:spis)
- {
- for(Plik b:a)
- {
- System.out.print(b.getClass()+", ");
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement